回答
它们需要通过相对路径导入组件的SCSS文件。这将允许编译器找到必要的父文件进行处理。
我尝试使用其他全局样式文件variables.scss文件,发现有这样做的2种方法,但只有一个工作(角CLI 1.0.0 21):
我添加了一个变量.scss文件和Assets文件夹下的site.scss文件。 site.scss中的一个属性引用变量集variables.scss中。
有两种方法可以包含全局样式。 1将import语句放入全局styles.scss。
第二种方法是将它们置于angular-cli.json中的Styles数组下。
当我做第一种方法时,我无法让网站中的变量工作(没有错误,只是不呈现)。
但是,当我将所有全局样式移动到angular-cli.json中时,它工作正常(这需要花费几个小时才能证明)。您仍然需要使用导入来引用兄弟文件,以便声明变量。我可以进入更详细,如果需要......
@import 'variables.scss';
您必须导入其中的变量是从组件文件的文件:
@import "XX/XX/XX/_name.scss";
XX是与变量的文件的相对路径
部分(mixin,变量等)不需要'_'符号。只需添加名称的相对路径就可以了。请参阅@brocco在这里给出的答案 –
您必须在您尝试使用全局变量的每个组件的样式表中导入全局SCSS文件。 只是为了减少用相对路径编写导入路径的痛苦和沮丧。 您可以使用w.r.t根文件夹(SRC)
@import '~names.scss'
注意绝对路径:这里假设被放置在NgApp的根目录下的顶部所需的全局样式它。 用“〜”加上文件名,告诉webpack的angular-cli它不是相对路径。
嘿,我通过使用这个webpack配置解决。因此,sass-loader可以获取“数据”选项,您可以在其中声明您的导入语句。
{
test: /\.scss$/,
exclude: [/node_modules/, /styles/],
use: ['to-string-loader', 'css-loader', {
loader: 'sass-loader', options: {
sourceMap: true,
data: '@import "variables";',
includePaths: [
path.join(__dirname, '../styles/sass/')
]
}
}
- 1. Angular 2中的全局.scss文件
- 2. 如何在angular-cli项目中使用全局scss文件
- 3. 如何在React/Redux项目中导入全局SCSS文件?
- 4. Python全局文件
- 5. 全局.zip文件
- 6. @angularCli RC0中的zone.js文件在哪里?
- 7. SCSS文件名
- 8. 我可以在Webpack中全局公开一个.less/.scss参考文件吗?
- 9. 创建SCSS变量SCSS文件
- 10. 所有SCSS文件
- 11. MVC全局脚本文件
- 12. python全局参数文件
- 13. AngularJS的全局头文件
- 14. node.js需要全局文件
- 15. Mercurial:全局忽略文件
- 16. 全局文件引用
- 17. Zend Framework全局文件
- 18. 覆盖全局php.ini文件
- 19. IntelliJ&全局配置文件
- 20. 无法将scss文件导入到其他scss文件中
- 21. 将`.scss`文件包含在另一个`.scss`文件中?
- 22. PhpStorm和SCSS将scss文件编译成一个css文件
- 23. 在全局头文件中声明一个全局变量?
- 24. AngularCli:禁用缩小
- 25. Sass watch命令在全部sftp上传前编译.scss文件
- 26. webpack不加载scss文件?
- 27. SCSS Mixins文件未加载
- 28. 合并引导SCSS文件
- 29. Webpack - 导出SASS(.scss)文件
- 30. scss文件在哪里
嗨@罗德尼,我仍然有组织文件结构和导入问题。你把'variables.scss'放在哪里?你是否将它包含在'styles'下的'angular-cli.json'中?在我的组件中,我应该导入它与一些丑陋的路径引用(如@import'../../../ variables.scss'')? – Cranio
是的,所以我的变量文件位于顶部的angular-cli.json中:“样式”:[assets/css/theme/_variables.scss]。是的,Assets文件夹下的文件(例如\ assets \ css \ components \ x.scss)有一个相对引用,例如@import'../theme/_variables.scss'; – Rodney