react组件中访问scss变量的问题

Sri*_*ugu 1 sass reactjs

按照链接https://mattferderer.com/use-sass-variables-in-typescript-and-javascript

希望访问 react 组件中的 scss 变量。不确定我需要在反应组件中调用什么导入名称,因为如果我给出如下导入语句,它会显示一个错误,因为找不到模块“../scss/_variables.scss”;

import _variables from '../scss/_variables.scss';
Run Code Online (Sandbox Code Playgroud)

这里 _variables.scss 是包含的文件名

 // variables.scss
$white-color: #fcf5ed; 

:export {
  whitecolor: $white-color; }
Run Code Online (Sandbox Code Playgroud)

我正在挠头以获取 react 组件中可用的“whitecolor”变量。

另外,我正在使用 webpack 如下

{
 test: '/.scss$/',
 use: [{
  loader: 'style-loader' // creates style nodes from JS strings
 }, {
  loader: 'css-loader' // translates CSS into CommonJS
 }, {
  loader: 'sass-loader' // compiles Sass to CSS
 }]
}
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

任何帮助将不胜感激!

小智 8

在 React 中导入特定属性不起作用,除非它是一个模块。

我遇到了同样的问题,这就是我所做的:

重命名_variables.scss_variables.module.scss然后导入是import _variables from '../scss/_variables.module.scss';

现在您可以像访问 scss 变量一样 _variables.whitecolor


Jak*_*ake -2

一种方法是npm install node-sass

然后将您的更改app.cssapp.scss并在其中导入样式表:

@import '../scss/_variables.scss';

然后你可以像这样使用它

.App-link {
  color: $secondary-color;
}
Run Code Online (Sandbox Code Playgroud)

  • 我想访问 typescript/js 文件中的 scss 变量,而不是其他 scss 文件中的变量。您的解决方案适用于在 scss 文件中传递变量。 (2认同)