Quiero cambiar los temas en React.js según la condición sea verdadera o falsa, pero cuando cambio los estilos insertados en la clase de la aplicación, solo cambia los elementos internos, no todo el cuerpo.
app.jsx
import "./styles.css"; import { dark, light } from "./comp/themes"; export default function App() { const isDarkMode = true; const DarkMode = isDarkMode ? dark : light document.body.style.background={DarkMode}; return ( <div className="App"> <h1>hi</h1> </div> ); }
./comp/themes.jsx
export const dark = { backgroundColor: "rgb(38, 38, 38)", color: "white" }; export const light = { backgroundColor: "white", color: "black" };
ayúdame a lograr cambiar los temas. Gracias por adelantado
Creo que está tratando de asignar la propiedad de fondo del objeto y no una cadena. document.body.style.background={DarkMode.backgroundColor}
Lo averigué
app.js
import "./styles.css"; import { dark, light } from "./comp/themes"; import Toggler from "./comp/Switch"; export default function App() { const isDarkMode = false; const DarkMode = isDarkMode ? dark : light document.body.style.backgroundColor=DarkMode.backgroundColor; document.body.style.color=DarkMode.color; return ( <div className="App"> <h1>hi</h1> </div> ); }