reactjs - 运行 heroku-postbuild 时出现错误“找不到模块:无法解析 './User.scss'”
问题描述
我正在使用 React/Redux/Firebase 进行聊天
我有下一个结构:
components
User
index.js
User.scss
UserHeader.js
UserItem.js
UserList.js
UserSerach.js
Message
index.js
Message.scss
MessageList.js
...
“类型”用户的所有组件样式都位于文件 User.scss 我不确定什么是正确的。我不喜欢很多带有组件的文件夹
我的行动:
git add .
git commit --amend --no-edit
heroku create
heroku git:remote -a project-name
git push heroku master
在文件 package.json 我还写:
"engines": {
"npm": "6.4.1",
"node": "10.14.2"
}
并在安装软件包后开始生产:
"heroku-postbuild": "npm run serve"
在 heroku 软件包安装期间,我收到一个错误:
ERROR in ./src/components/User/UserHeader.js
remote: Module not found: Error: Can't resolve './User.scss' in '/tmp/build_0467563cc44feeb52e4f8bb96c6f75fa/src/components/User'
remote: @ ./src/components/User/UserHeader.js 3:0-33 8:15-21 10:15-21 14:15-21 16:15-21 19:15-21
remote: @ ./src/components/User/index.js
remote: @ ./src/components/Chat/Chat.js
remote: @ ./src/components/Chat/index.js
remote: @ ./src/components/App/App.js
remote: @ ./src/components/App/index.js
remote: @ ./src/index.js
但我导入了 User.scss:
import styles from './User.scss';
其他用户组件会弹出相同的错误。但是我在消息组件中有一个 scss 文件的结构相同,并且没有错误..
webpack 配置中的样式:
{
test: /\.(sa|sc|c)ss$/,
use: [
devMode ? 'style-loader' : MiniCssExtractPlugin.loader,
{
loader: 'css-loader',
options: {
modules: true,
}
},
{
loader: 'postcss-loader',
options: {
ident: 'postcss',
plugins: () => [
autoprefixer({
browsers: [
'>1%',
'last 4 versions',
'Firefox ESR',
'not ie < 9'
],
flexbox: 'no-2009'
})
]
}
},
'sass-loader'
]
}
我已经尝试了其他几种样式设置-同样的错误。
编辑
我发现错误出在 scss 文件名(user.scss => User.scss)中。但我遇到了同样的错误。
在阅读 webpack 或 Windows 控制台或 Heroku(我不记得)缓存文件后,我修复了一个错误。当您更改它们的位置或 Heroku 的名称时,它们不会更改。有点像,但我不记得了。
我需要在控制台中输入一些内容,以便考虑对文件和路径的更改。也许有人知道?
编辑 2
解决了我的愚蠢问题:
- 通过将文件的名称更改为正确的名称,在 GitHub 上进行了提交。如果我在本地更改文件,它就不起作用,因为我上面写的问题)
- 做了一个 git pull
- 现在 Heroku 工作了:)
但是我仍然想知道如何解决上面写的问题。
解决方案
推荐阅读
- javascript - 带有嵌套可排序项的 jQuery 动态可排序
- powershell - 调用哈希表时命令中的变量
- database - DB::transaction(function () use ($request) 在 laravel 控制器中不起作用
- css - CSS Grid - 在悬停时设置项目宽度
- java - 现有加载类的字节码修改
- json - 当 json 有多个相同的条目时,如何让 jq 返回唯一的结果?
- python - 如何确定周期序列的最小周期
- c# - 该进程无法访问该文件,因为它正被 C# asp.net 中的另一个进程使用
- go - 由于 CLOSE_WAIT 和 TIME_WAIT 套接字上升导致代理服务器不稳定
- python - 如何将列表写入不带括号的文件