vue.js - 如何通过加载器 prependData 向 Nuxt 中的所有 scss 文件添加多变量
问题描述
我是 Nuxt 2.13 和 sass-loader 8.0.2 。我要在我的 scss 文件中添加两个 env 变量。我通过加载器在 Nuxtjs 的构建部分成功添加了一个变量:
build: {
loaders: {
scss: {
prependData: `$base_url: '${process.env.NODE_ENV == 'development' ? process.env.NUXT_BASE_URL : process.env.SITE_BASE_URL+'/'}';`,
}
}
}
但是如何添加另一个???
试过了
prependData: `$base_url: '${process.env.NODE_ENV == 'development' ? process.env.NUXT_BASE_URL : process.env.SITE_BASE_URL+'/'}';$nuxt_mode: '${process.env.NODE_ENV}';`
但它不会添加第二个。
解决方案
我建议更新到 sass-loader 9.0.0,然后将 prependData 替换为可以作为函数的附加数据。
...
additionalData: _ => {
return `$base_url: '${process.env.NODE_ENV == 'development' ? process.env.NUXT_BASE_URL : process.env.SITE_BASE_URL+'/'}';$nuxt_mode: '${process.env.NODE_ENV}';`;
},
...
推荐阅读
- ruby - Ruby:Concurrent::Semaphore 产生死锁
- mysql - 为什么 active_storage:install 的迁移 (v5.2.1) 在运行时会生成无效的 MySQL 语法?
- c++ - 如何在 C++ 中制作“例程”(无函数)
- php - 如何使用 jquery ajax 将图像移动到文件夹中?
- regex - 加拿大邮政编码 + 美国邮政编码的 SQL 约束?
- three.js - 在threejs中使用ShaderMaterial添加两步颜色指向
- javascript - TypeError:无法获取输入文本
- python - 高斯核的 FFT 不正确
- mysql - 我在我的 xampp 目录或方法中找不到正确的文件来修复我的 mysql 配置
- php - Laravel:大规模更新