我是新来的nextjs
我有一个css
课程styles/globals.css
:
.section-sidebar-filter-name {
margin: 0 0 .5rem;
}
Run Code Online (Sandbox Code Playgroud)
我的import
声明如下pages/_app.js
:
import '../styles/globals.css'
function MyApp({ Component, pageProps }) {
...
};
Run Code Online (Sandbox Code Playgroud)
但当我在 chrome 浏览器开发者模式下查看它时,类CSS
样式并未应用于( ):react components
pages
Example: test.js page
function Test() {
return(
<h3 className="c-clickable section-sidebar-filter-name">Test</h3>
)
}
Run Code Online (Sandbox Code Playgroud)
next.config.js:
module.exports = {
webpack: (config) => {
const rules = config.module.rules
.find((rule) => typeof rule.oneOf === 'object')
.oneOf.filter((rule) => Array.isArray(rule.use));
rules.forEach((rule) => {
rule.use.forEach((moduleLoader) => {
if (moduleLoader.loader.includes('css-loader') && !moduleLoader.loader.includes('postcss-loader')) {
delete moduleLoader.options.modules.getLocalIdent;
moduleLoader.options = {
...moduleLoader.options,
modules: {
...moduleLoader.options.modules,
localIdentName: '[folder]__[local]--[hash:base64:5]',
// getLocalIdent: (context, localIdentName, localName, options) => {
// return "whatever_random_class_name";
// },
// You can also add other css-loader options here
}
};
}
});
});
return config;
}
};
Run Code Online (Sandbox Code Playgroud)
有人知道我做错了什么吗?
小智 8
您需要使用以下代码在页面目录(_app.js)内创建一个文件:-
\nexport default function App({ Component, pageProps }) {\n return <Component {...pageProps} /> \n} \n
Run Code Online (Sandbox Code Playgroud)\n该应用程序组件是顶级组件,在所有不同页面中都是通用的。例如,您可以使用此应用程序组件在页面之间导航时保持状态。
\n在Next.js中,您可以通过从pages/_app.js导入全局CSS文件来添加它们。您无法在其他任何地方导入全局 CSS。
\n全局CSS无法在pages/_app.js之外导入的原因是全局CSS会影响页面上的所有元素。
\n如果您要从主页导航到 /posts/first-post 页面,主页的全局样式会无意中影响 /posts/first-post 。
\n您可以将全局 CSS 文件放置在任何位置并使用任何名称。因此让\xe2\x80\x99s 执行以下操作:
\n创建一个顶级 styles 目录并在其中创建 global.css。\n将以下内容添加到 styles/global.css。它重置一些样式并更改 a 标签的颜色:
\nhtml,\nbody {\n padding: 0;\n margin: 0;\n font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu,\nCantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;\n line-height: 1.6;\n font-size: 18px;\n } \n\n* {\n box-sizing: border-box;\n}\n\n a {\n color: #0070f3;\n text-decoration: none;\n }\n\na:hover {\n text-decoration: underline;\n }\n\n img {\n max-width: 100%;\n display: block;\n} \n
Run Code Online (Sandbox Code Playgroud)\n最后,打开pages/_app.js添加导入CSS文件,如下所示:
\nimport '../styles/global.css'\n\nexport default function App({ Component, pageProps }) {\n return <Component {...pageProps} />\n} \n
Run Code Online (Sandbox Code Playgroud)\n
归档时间: |
|
查看次数: |
14096 次 |
最近记录: |