【初体验】【学习】Web Component

序言

欢迎来到2025年的第一篇博客!新的一年,将持续深耕于新知识的学习,并不断深化对已有知识的理解。目标是构建一个更加系统化、结构化的知识体系,以更好地应对未来的挑战与机遇。

前言

需要以下基础:

假设您已经了解所有知识点,并且您的环境中已安装了 Node.js和npm ,我们现在可以进行下一步。

创建项目

首先,我们需要创建一个新的项目目录,并初始化项目:

sh 复制代码
mkdir web-component-demo
cd web-component-demo
npm init -y

安装依赖

接下来,我们需要安装一些必要的依赖:

sh 复制代码
npm install --save-dev webpack webpack-cli webpack-dev-server style-loader css-loader html-webpack-plugin 

配置 Webpack

在项目根目录下创建一个 webpack.config.js 文件,并添加以下内容:

js 复制代码
const path = require("path");
const HtmlWebpackPlugin = require("html-webpack-plugin");
/**
 * @type {import ("webpack").Configuration}
 */
module.exports = {
  mode: "development",
  entry: path.resolve(__dirname, "./src/index.js"),
  output: {
    path: path.resolve(__dirname, "dist"),
    filename: "index.bundle.js",
  },
  module: {
    rules: [
      {
        test: /\.css$/,
        use: ["style-loader", "css-loader"],
      },
    ],
  },
  plugins: [
    new HtmlWebpackPlugin({
      template: path.resolve(__dirname, "./public/index.html"),
    }),
  ],
};

创建项目结构

在项目根目录下创建以下目录和文件:

复制代码
web-component-demo/
├── public/
│   └── index.html
├── src/
│   ├── index.js
│   └── styles.css
├── package.json
└── webpack.config.js

编写 HTML 文件

public/index.html 文件中添加以下内容:

html 复制代码
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Web Component Demo</title>
  </head>
  <body>
    <my-component></my-component>
  </body>
</html>

编写 JavaScript 文件

src/index.js 文件中添加以下内容:

js 复制代码
import "./styles.css";

class MyComponent extends HTMLElement {
  constructor() {
    super();
  }

  connectedCallback() {
    this.className = "wrapper";
    this.textContent = "Hello, Web Component!";
  }
}

customElements.define("my-component", MyComponent);

编写 CSS 文件

src/styles.css 文件中添加以下内容:

css 复制代码
.wrapper {
  font-size: 20px;
  color: blue;
}

启动开发服务器

package.json 文件的 scripts 部分添加以下内容:

json 复制代码
"scripts": {
  "start": "webpack serve --open"
}

然后运行以下命令启动开发服务器:

sh 复制代码
npm start

总结

通过以上步骤,我们创建了一个简单的 Web Component 项目,并使用 Webpack 进行打包和开发服务器的配置。欢迎在评论区分享您的意见和建议。

相关推荐
上海大哥几秒前
Flutter 实现工程组件化(Windows电脑操作流程)
前端·flutter
刘语熙9 分钟前
vue3使用useVmode简化组件通信
前端·vue.js
XboxYan33 分钟前
借助CSS实现一个花里胡哨的点赞粒子动效
前端·css
码侯烧酒1 小时前
前端视角下关于 WebSocket 的简单理解
前端·websocket·网络协议
OEC小胖胖1 小时前
第七章:数据持久化 —— `chrome.storage` 的记忆魔法
前端·chrome·浏览器·web·扩展
OEC小胖胖1 小时前
第六章:玩转浏览器 —— `chrome.tabs` API 精讲与实战
前端·chrome·浏览器·web·扩展
不老刘1 小时前
基于clodop和Chrome原生打印的标签实现方法与性能对比
前端·chrome·claude·标签打印·clodop
ALLSectorSorft2 小时前
定制客车系统票务管理系统功能设计
linux·服务器·前端·数据库·apache
xiaopengbc2 小时前
B站,视频号怎么下载?,猫抓cat-catch离线版下载,Chrome扩展插件
前端·chrome
白头吟2 小时前
js函数中的this
javascript