我正试图根据环境在_app.js
:中加载样式表
if (process.env.NODE_ENV === 'production' ) {
import '../styles/globals-production.scss'
} else {
import '../styles/globals-staging.scss'
}
但是在控制台中得到这个错误:Syntax error: 'import' and 'export' may only appear at the top level
关于如何使用Next.js做到这一点,有什么想法吗?
在我的情况下,我想导入rtl引导程序,所以我添加了一个选择器来切换导入。您将需要一种方法来向html标记添加自定义属性。
如果您正在使用Next,我推荐nextjs自定义文档:https://nextjs.org/docs/advanced-features/custom-document
然后在style.scss中使用自定义属性选择器(例如:(包装导入
[dir='rtl'] {
@import '~bootstrap/dist/css/bootstrap.rtl.min';
}
javascript import语句必须出现在顶层,但是import(("函数";可能正是你想要的。
if (process.env.NODE_ENV === 'production' ) {
import('../styles/globals-production.scss');
} else {
import('../styles/globals-staging.scss');
}