Ind*_*ct 15 heroku typescript reactjs material-ui mern
在生产版本上尝试访问我的 MERN 应用程序的登录组件时,我收到一系列如下图所示的类型错误:
我的应用程序 ( https://github.com/ahaq0/kumon_schedule ) 在本地运行良好,今天早些时候托管在 Heroku 上运行良好。
我尝试回滚我今天所做的代码中的所有更改,但无济于事。同样,我检查了 package.json(和 .lock)以查看是否更改了材质 UI 依赖项,但结果是一样的。我似乎无法弄清楚为什么它在此处的托管版本上突然停止工作。
错误行的代码如下。但是,我没有写,因为它是 Material UI 的一部分。
if (sheetManager.dynamicStyles) {
var dynamicSheet = stylesOptions.jss.createStyleSheet(sheetManager.dynamicStyles, _extends({
link: true
}, options));
dynamicSheet.update(props).attach();
state.dynamicSheet = dynamicSheet;
state.classes = mergeClasses({
baseClasses: sheetManager.staticSheet.classes,
newClasses: dynamicSheet.classes
});
if (sheetsRegistry) {
sheetsRegistry.add(dynamicSheet);
}
} else {
state.classes = sheetManager.staticSheet.classes;
}
sheetManager.refs += 1;
Run Code Online (Sandbox Code Playgroud)
这是我第一个部署的应用程序,尽管我尽了最大努力回滚,但我对一切如何从工作到不工作感到茫然。
编辑。我应该提到我在 Firefox 以及错误日志来自的 Chrome 中进行了测试。
编辑#2。经过大量调试后,我发现如果我回滚到通过 Heroku 提交 fccc55a5,错误就会消失。但是,如果我使用该提交创建一个新分支并尝试部署该分支,它将无法正常工作。
请看这里 https://github.com/ahaq0/kumon_schedule/compare/fccc55a5...fccc55a5
当我恢复到 Heroku 中的最后一次构建时,它将起作用。但是如果我将之前的提交合并到一个新分支并尝试部署它,它不会。
jou*_*elm 10
将 "jss": "10.0.0" 添加到 "dependencies": { } 为我解决了这个问题
--- 更新 30.12.19 ---
现在可以删除“jss”,
错误已修复:
"@material-ui/core": "4.8.2",
Run Code Online (Sandbox Code Playgroud)
如果你yarn像我一样使用,那么你可以通过向resolutions你的package.json定位jss 10.0.0版本添加一个字段来解决它。
package.json 应该是这样的:
{
"dependencies": {
"@material-ui/core": "^4.8.1",
},
"resolutions": {
"jss": "10.0.0"
}
}
Run Code Online (Sandbox Code Playgroud)
我也在 Github 上分享了我的解决方案(似乎对其他人有用):https : //github.com/mui-org/material-ui/issues/19005#issuecomment-569447204
如果它也对您有用,请接受答案!:)
小智 1
我面临着同样的问题。发生这种情况是因为我将 @material-ui/core^4.4.0 更新为 @material-ui/core^4.8.1。新版本中可能存在重大更改或错误。最新版本刚刚发布四天,因此可能还没有解决方案。但对于您的问题,请尝试降级到 @material-ui/core^4.4.0 或您正在使用的先前版本的material-ui,它应该可以工作。无需回滚到之前的提交。
| 归档时间: |
|
| 查看次数: |
3620 次 |
| 最近记录: |