我的Vue项目结构:styles目录包含所有 css 文件。
src
├── assets
├── components
├── styles
│ ├── main.css
│ ├── normalize.css
│ └── variables.css
├── views
├── App.vue
├── main.ts
├── router.ts
src/styles/main.css导入其他 css 就像:
@import 'normalize.css';
@import 'variables.css';
我想src/styles/main.css
在 Vue 全局中导入。那是:
import Vue from 'vue';
import './styles/main.css'; // global
import App from './App.vue';
import router from './router';
Vue.config.productionTip = false;
new Vue({
router,
render: (h) => h(App),
}).$mount('#app');
然后我可以直接在每个.vue组件中使用 variables.css 中定义的变量。喜欢:
<style lang="postcss" scoped>
a {
color: $primary; // defined in variables.css
}
</style>
但postcss-loader
未能解决$primary
变量:
Module build failed (from ./node_modules/postcss-loader/lib/index.js):
Syntax Error
(79:10) Could not resolve the variable "$primary" within "$primary"
我怎样才能导入全局main.css
,所以我不需要@import 'variables.css'
在每个.vue
组件中?