Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

252
Vistas
Cómo hacer que las variables SCSS reaccionen

Seguí esta publicación Cómo usar las variables SCSS en mis componentes React o esta React y SCSS exportan una variable de scss para reaccionar para obtener la variable scss en mi aplicación de reacción, pero no funciona.
archivo myvar.scss :

 $color: red; :export { color: $color; } .myclass { background-color: $color; }

Archivo App.js :

 import variables from './myvar.scss'; const App = () => { console.log(variables); return <div className="myclass">Hello</div> } export default App;

El fondo div es rojo, por lo que myvar.scss está funcionando. Pero variables es un objeto vacío.

(versión de reacción: 17.0.1)

node_modules\react-scripts\config\webpack.config.js

 module: { strictExportPresence: true, rules: [ { parser: { requireEnsure: false } }, { oneOf: [ ... { test: sassRegex, exclude: sassModuleRegex, use: getStyleLoaders( { importLoaders: 3, sourceMap: isEnvProduction ? shouldUseSourceMap : isEnvDevelopment, }, 'sass-loader' ), sideEffects: true, },
over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Esa es una característica de webpack/css-loader y solo funciona con webpack y css-loader ( https://webpack.js.org/loaders/css-loader/#separating-interoperable-css-only-and-css-module-features )

Importante: la sintaxis :export en sus archivos SCSS/CSS solo funcionará para aquellos archivos que css-loader trata como un módulo , porque esta sintaxis es parte de una propuesta de módulo css . Puede...

  • use el comportamiento predeterminado de css-loader y active ese comportamiento a través del nombre de archivo: por ejemplo foostyle.module.scss
  • o puede configurar css-loader para tratar todos los archivos como módulos, por ejemplo loader: 'css-loader', options: { modules: true }

Se puede encontrar una publicación de blog con un ejemplo aquí: https://til.hashrocket.com/posts/sxbrscjuqu-share-scss-variables-with-javascript (Tenga en cuenta que la publicación de blog no menciona el hecho de que los módulos css deben ser utilizado.)

 $white-color: #fcf5ed; :export { whitecolor: $white-color; }

y

 import variables from 'variables.module.scss'; console.log(variables.whitecolor)

su webpack.config.js probablemente contendrá una cadena de cargadores con css-loader como último o penúltimo (proceso cronológicamente hablando) y esto debería funcionar.

 module: { rules: [ { test: /\.scss$/, use: [ 'style-loader', 'css-loader', 'sass-loader' ], },
over 4 years ago · Santiago Trujillo Denunciar

0

Yo diría que intente usar así

 const App = () => { const [parameters, setParameters] = useState({ fontFamily: '' }); return ( <div style={setParameters(fontFamily && { fotnType: 'font_name' })}> {content} </div> ); };

Espero que esto funcione para usted.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda