如果你是从 React 开始的,如果不先了解 styled-components 试图解决的问题,我不会使用像 styled-components 这样的深度内容。
您的第一种方法应该是基本的,只需将一个或多个<link>s 添加到您的.css 文件(例如reset.css、grid.css、其中的组件选择器等)并使用正确的classNames组件中的道具:
// main.css
body {
// ...
}
// MyToolbar.css
.MyToolbar {
// style for a MyToolbar react component
}
在您的 html 中:
<html>
<head>
<link rel="stylesheet" type="text/css" href="reset.css">
<link rel="stylesheet" type="text/css" href="main.css">
<link rel="stylesheet" type="text/css" href="grid.css">
<link rel="stylesheet" type="text/css" href="MyToolbar.css">
随着您的应用程序的增长,您会发现很难维护这个<head>,因此您将受益于更加模块化的方法。
例如,您的下一步可能是从 javascript 导入 CSS,而不是在标题中使用 <link>:
// App Component
import React from 'react';
// import globally used styles
import './styles/reset.css';
import './styles/main.css';
export default class App extends React.Component {
// snip
}
要在 JavaScript 中导入 CSS 文件,您需要使用像 webpack 这样的模块捆绑器来处理这些 imports 语句。从这里开始阅读:https://webpack.js.org/guides/asset-management/#loading-css。这样做你就不需要手动<head> 中的 CSS 文件。
事实上,您可以从组件中导入 CSS:
// MyToolbar.js component
import React from 'react';
import './styles/MyToolbar.css';
export default class MyToolbar extends React.Component {
render() {
// render your component here
}
}
一旦您的应用发展壮大,您可能想要尝试其他解决方案,例如样式组件。