vue.js - Nuxt.js 常用 SCSS 模块?
问题描述
我有一个util.scss
文件,我想包含在几个组件中:
.grid {
display: grid;
grid-template-columns: 1fr 1fr;
...
}
我在我的组件中导入并使用这个文件,如下所示:
<template>
<div :class="$style.grid"> ... </div>
</template>
<style lang="scss" module>
@import 'util.scss';
...
</style>
这样,util.scss
将为每个组件导入内容,从而在最终构建的捆绑包中产生许多重复。有没有办法只导入一次这个文件并将其重用于所有组件?
我知道我可以使用css属性nuxt.config.js
将文件作为普通样式表全局导入,但这不允许使用$style.
解决方案
您应该使用@nuxtjs/style-resources模块。它以前在核心中实现,但最近已在特定模块中分离。(参见nuxt 文档)
只需在 nuxt 配置中链接您的 css 文件,它将自动导入到每个 css 文件/组件样式标签中:)
// nuxt.config.js
styleResources: {
scss: ['~/assets/scss/global.scss'],
}
推荐阅读
- mysql - 数据建模和实现关系[1对多][多对多]等
- node.js - 我可以在不安装 Express 的情况下使用 body-parser 模块吗?
- c++ - 如何从 phinode 及其在 LLVM 中的相应基本块中获取标签?
- node.js - 号码的 Hapi/Joi 验证失败
- php - 未定义的偏移量 [PHP / JQUERY]
- typescript - 嵌套函数调用中的打字稿异步等待
- git - Git将不同的分支推送到不同的远程仓库?
- gcloud - Gcloud:从模板获取输出
- oracle - 无法在 oracle 12c Realease II 数据库中使用系统/管理器登录
- c++ - 如何在 MFC 中的 CArray 中使用 CArray?