css - 如何将后缀为“.scss”的文件导入到Vue项目的子组件中?
问题描述
这个项目是用 Vue 编码的。
我想将 sass 文件导入子组件。但浏览器报告错误“找不到要导入的文件或无法读取:../assets/scss/global_css.scss”
我尝试将“global_css.scss”导入父组件并从<style> 中删除“scoped”。这种方法可以有效!但是我担心这会影响组件之间的CSS样式。我希望找到更好的解决方案。
我试图将'global_css.scss'导入子组件的<脚本>。(这听起来不可靠,事实也是如此。)
这是用于导入“global_css.scss”的代码。
<style scoped lang="scss">
@import "../../assets/scss/global_css";
</style>
(PS.我的经验还很浅薄,如有不妥还请见谅。)
这个问题已经在 Uiosun 的帮助下解决了。他建议修改配置文件中的代码。代码如下:
return {
css: generateLoaders(),
postcss: generateLoaders(),
less: generateLoaders('less'),
sass: generateLoaders('sass', { indentedSyntax: true }),
scss: generateLoaders('sass',{data:'@import "../assets/scss/global_css";'}), //Delete the code after the comma
stylus: generateLoaders('stylus'),
styl: generateLoaders('stylus'),
}
更正代码:</p>
return {
css: generateLoaders(),
postcss: generateLoaders(),
less: generateLoaders('less'),
sass: generateLoaders('sass', { indentedSyntax: true }),
scss: generateLoaders('sass'),
stylus: generateLoaders('stylus'),
styl: generateLoaders('stylus'),
}
成功!</p>
解决方案
我可以知道你项目的文件结构吗?
检查您的装载机是否正确工作;
可能您可以尝试子组件文件的“相对路径”。
例如。@import "../../assets/scss/global_css";
推荐阅读
- angular - Storybook Angular:如何使用导入的自定义库中的模型/接口?
- android - Android ExoPlayer 如何收听视频时长并在我们想要的每一秒内做一些事情?
- javascript - Javascript减少变得丑陋未定义
- java - 如何连接到数据库 psql?
- python - 如何让 python webscraping 更好地更新
- file - 文件权限不正确
- javascript - 使用 js-ipfs 在浏览器中发布的 IPNS 名称不会在网关或本地节点上解析
- javascript - 如何在reactjs中使用downshift设置输入值
- azure - Azure.Search.Documents - 使用集合更新或插入对象
- postgresql - 如何在 PostgreSQL 中存储 unsigned long?