reactjs - 使用 React-Router 的多页面 React 应用程序中基于当前活动组件导入的样式表
问题描述
目前的情况是我有多个组件,每个组件都有不同的样式表,我开始将它们全部合并。
这里有一个问题,当在主 index.js 文件中导入组件时,每个样式表都是全局导入的。
// Auth stylesheet found in Auth.js(component)
import './style.sass';
// Auth component being imported in index.js file
import Auth from "./components/Auth/Auth";
冲突的部分来了,尤其是对于 DOM 容器的上层堆栈,比如 document,#root...
有什么方法可以在将组件呈现到 DOM 时导入每个组件的样式表,当一个组件被主动呈现时,每个样式表都需要导入是非常乏味的?
这是我的index.js文件,以防万一,我在其中定义了对应于网站不同部分的自定义路由。
...
let store = createStore(rootReducer, app, applyMiddleware(
ThunkMiddleware,
logger
));
render(
<Provider store={store}>
<BrowserRouter>
<Switch>
<Route exact path="/" component={Welcome}/>
<Route exact path="/auth" component={Auth}/>
<Route exact path="/main" component={Main}/>
...
</Switch>
</BrowserRouter>
</Provider>,
document.getElementById("root")
);
解决方案
使用样式的唯一方法是 1. 导入它们并在组件上使用 classname 属性。2. 内嵌样式。通过直接在组件上调用样式表。
<form style={{backgroundColor: ‘black’}}> <\form>
推荐阅读
- java - 如何从 Azure Function Java 返回从 Datalake Storage 下载的文件?
- python - 使用 bs4 lib 解析 JS 页面时获取“无”
- css - 如何将点击链接添加到嵌入式 vimeo 视频?
- javascript - 导出/导入 javascript 模块
- xamarin - 如何在框架 Xamarin.Forms 中显示分组和分组项目
- python - ArangoDB get_or_create 文档的最佳方法
- javascript - 将道具传递给不带引号的组件
- asp.net-core - Razor Pages ASP.NET Core 3.1 - 如何动态创建多个单选按钮组
- asp.net-core - 根据验证程序,远程证书无效 - NET Core WebAPI
- laravel - 函数 App\Awe\JsonUtility::addNewProduct() 的参数太少,