赞
踩
1.先安装 sass 和 scss
- # npm 方法安装
-
- npm i sass
-
- npm i scss
2.在 src 创建目录下创建如下文件及文件夹:/src/styles/element/index.scss
3.在 index.scss 文件中设置默认颜色
- @forward 'element-plus/theme-chalk/src/common/var.scss' with (
- $colors:(
- 'primary':(
- //主色
- 'base':#27ba9b,
- ),
- 'success':(
- //成功色
- 'base':#1dc779,
- ),
- 'warning':(
- //警告色
- 'base':#ffb302,
- ),
- 'danger':(
- //危险色
- 'base':#e26237,
- ),
- 'error':(
- //错误色
- 'base':red,
- ),
- )
- )
4.在 vite.config.ts 中让设置好的颜色覆盖element原有的默认颜色
- export default defineConfig({
- plugins: [
- vue(),
- AutoImport({
- resolvers: [ElementPlusResolver()],
- }),
- Components({
- // 在括号里加了{ importStyle: "sass" }
- resolvers: [ElementPlusResolver({ importStyle: "sass" })],
- }),
- ],
- resolve: {
- alias: {
- "@": fileURLToPath(new URL("./src", import.meta.url)),
- },
- },
- // 覆盖颜色
- css: {
- preprocessorOptions: {
- scss: {
- // 这里的路径要和刚刚写的 index.scss 文件路径一致
- additionalData: `
- @use "@/styles/element/index.scss" as *;
- `,
- },
- },
- },
- });
5.在页面引入一些按钮,查看效果
- <template>
- <div>
- <el-row class="mb-4">
- <el-button>Default</el-button>
- <el-button type="primary">Primary</el-button>
- <el-button type="success">Success</el-button>
- <el-button type="info">Info</el-button>
- <el-button type="warning">Warning</el-button>
- <el-button type="danger">Danger</el-button>
- </el-row>
- </div>
- </template>
1.新建一个 .css 或 .scss 文件(按个人喜好),写暗黑模式代码
- # dark.css
-
- /* 黑暗模式 */
- .dark-mode {
- background-color: #1f1f1f;
- /* background-color: #F53181; */
- color: #fff;
-
- .el-button {
- background-color: #333;
- color: #fff;
- }
- .el-input {
- background-color: #333;
- color: #fff;
- }
- }
2.全局引入刚刚创建的样式文件
import '@/assets/dark.css'
3.在页面中写一个切换按钮,控制模式切换
- # html部分
-
- <div>
- <el-switch @click="switch()" v-model="value1" />
- </div>
- # js部分
-
- import {
- ref
- } from 'vue'
-
- const value1 = ref(true)
- const isDarkMode = ref(false)
- const switch = () => {
- isDarkMode.value = !isDarkMode.value
- // 写黑暗模式样式代码的类名
- document.body.classList.toggle('dark-mode')
- }
光明与黑暗模式对比
完成,欢迎学习和交流!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。