From 8fb7a81b41dabd8828e05c4f99c0ab563a7f79a8 Mon Sep 17 00:00:00 2001 From: LCJ-MinYa <1049468118@qq.com> Date: Thu, 19 Dec 2024 11:41:08 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20jsx=E7=94=A8=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/demo/jsx/css-module.md | 55 ++++++++++++++++++++++ src/views/demo/jsx/index.vue | 74 ++++++++++++++++++++++++++++-- src/views/demo/jsx/jsx.module.scss | 7 +++ 3 files changed, 131 insertions(+), 5 deletions(-) create mode 100644 src/views/demo/jsx/css-module.md create mode 100644 src/views/demo/jsx/jsx.module.scss diff --git a/src/views/demo/jsx/css-module.md b/src/views/demo/jsx/css-module.md new file mode 100644 index 0000000..aac5e5f --- /dev/null +++ b/src/views/demo/jsx/css-module.md @@ -0,0 +1,55 @@ +CSS Modules 是一种局部样式的解决方案,确保样式只作用于特定组件,而不会影响全局。这是通过以下机制和原理来实现的: + +### 1. 局部样式的概念 + +CSS Modules 的设计目的是将 CSS 类名局部化,从而避免样式冲突。在使用 CSS Modules 时,类名会被自动生成唯一的标识符,以确保它们只在定义它们的组件中有效。 + +### 2. 如何实现局部样式 + +#### 生成唯一类名 + +当您使用 CSS Modules 时,每个类名都会被编译成一个唯一的名称。例如,如果您在 `styles.module.css` 中定义了一个类 `.item`,在编译后,它可能会被转换为类似 `styles_item__1A2B3` 的名称。这样,其他组件中相同的类名不会产生冲突。 + +#### 使用方式 + +在 Vue 3 中使用 CSS Modules 时,您需要通过 `import` 语句导入 CSS Module 文件,并通过导入的对象引用样式。这确保了样式只与特定组件关联。 + +```javascript +import styles from './styles.module.css'; // 导入 CSS Module + +