Vue中import 引入样式文件污染问题

在vue的的来年各个文件中,取了相同的class名,其中一个引入了外部样式,结果两个文件的样式都发生了变化,出现了样式污染的问题。
发现是自己粗心大意引入的方式不对。

错误的引用方式:
在script下直接import了一个样式文件,导致了问题的发生。

<script>
import './index.scss'
<script>

正确的引入方式:

1.通过标签引入
用那style标签引入样式文件,例如
<style lang="scss" scoped src="./index.scss"></style>

2.通过@import方式引入,例如

<style lang="scss" scoped src="./index.scss">
@import './index.scss';
</style>
Vue 2 项目中使用 `import` 引入 CSS 文件时,如果遇到报错,通常是因为 Webpack 配置缺少必要的 loader 来处理 CSS 文件。以下是完整的解决方案和实现方式: ### 1. 确保安装了 `css-loader` 和 `style-loader` Vue 项目中通过 `import` 引入 CSS 文件,需要 Webpack 能够识别并处理这些文件。因此,必须确保项目中安装了 `css-loader` 和 `style-loader`: ```bash npm install --save-dev css-loader style-loader ``` ### 2. 配置 Webpack 在 `webpack.config.js` 文件中添加对 CSS 文件的处理规则。确保 `module.rules` 中包含如下配置: ```javascript { test: /\.css$/, use: [ 'style-loader', 'css-loader' ] } ``` 此配置告诉 Webpack 在遇到 `.css` 文件时,先使用 `css-loader` 解析 CSS 文件,再通过 `style-loader` 将样式注入到 DOM 中。 ### 3.Vue 组件中使用 `import` 引入 CSS 文件 完成上述配置后,即可在 Vue 组件中通过 `import` 引入 CSS 文件。例如: ```javascript import '../assets/css/style.css'; ``` 这种方式适用于全局引入或者组件级别的样式引入。若仅在单个组件中引入样式,也可以使用 `<style>` 标签结合 `@import`: ```vue <style scoped> @import '../assets/css/style.css'; </style> ``` 注意:`scoped` 表示该样式仅作用于当前组件,而 `@import` 后的分号不能省略,否则会报错[^3]。 ### 4. 检查 `package.json` 文件 确保 `package.json` 中存在对 `css-loader` 和 `style-loader` 的依赖项,若没有,则手动添加: ```json "devDependencies": { "css-loader": "^6.7.1", "style-loader": "^3.3.1" } ``` ### 5. 重新启动开发服务器 修改配置后,需要重新运行开发服务器以使更改生效: ```bash npm run dev ``` 完成以上步骤后,Vue 2 项目应能正常通过 `import` 引入 CSS 文件而不再报错。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值