我在这里发表第一篇文章,我很不高兴,任何帮助将不胜感激。
当尝试在生产版本上访问我的MERN应用程序的Login组件时,此图像中显示了一系列以下类型错误:
我的应用(https://github.com/ahaq0/kumon_schedule)在本地运行良好,并且在今天早些时候在heroku上托管时运行良好。
我尝试回滚我今天所做的代码中的所有更改,但无济于事。同样,我检查了package.json(和.lock)以查看是否更改了材料ui依赖关系,但这是相同的。我似乎无法弄清楚为什么它突然在托管版本here上停止工作。
错误所在行的代码如下。但是,我没有写,因为它是材料ui的一部分。
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;
}
这是我第一个部署的应用程序,尽管我尽了最大的努力来回滚,但我却茫然不知所措,从工作状态变为不工作状态。
编辑。我应该提到我在错误日志来自的Firefox和Chrome中进行了测试。
编辑#2。经过大量调试后,我发现如果我回滚以通过heroku提交fccc55a5,则该错误消失了。但是,如果我使用该提交创建了一个新分支,并尝试部署该分支,它将无法正常工作。
请在此处查看 https://github.com/ahaq0/kumon_schedule/compare/fccc55a5...fccc55a5
当我恢复到heroku中的最后一个版本时,它将起作用。但是,如果我将先前的提交合并到新分支中并尝试部署它,则不会。
答案 0 :(得分:5)
添加 “ jss”:“ 10.0.0” 至 “依赖项”:{} 为我解决了问题
---更新30.12.19 ---
“ jss”现在可以删除,
错误已修复:
"@material-ui/core": "4.8.2",
答案 1 :(得分:5)
如果您像我一样使用yarn
,则可以通过将resolutions
字段添加到定位package.json
jss
版本的10.0.0
来解决此问题。
package.json
应该看起来像这样:
{
"dependencies": {
"@material-ui/core": "^4.8.1",
},
"resolutions": {
"jss": "10.0.0"
}
}
我也在Github上分享了我的解决方案(似乎对其他人也有用):https://github.com/mui-org/material-ui/issues/19005#issuecomment-569447204
如果它也对您有用,请接受答案! :)
答案 2 :(得分:3)
就我而言,它是通过删除Box组件解决的。
答案 3 :(得分:1)
我正面临着同样的问题。这是因为我将@ material-ui / core ^ 4.4.0更新为@ material-ui / core ^ 4.8.1。在新版本中可能会有重大更改或错误。最新版本仅在四天前发布,因此可能还没有解决方案。但是对于您的问题,请尝试降级为@ material-ui / core ^ 4.4.0或您使用的旧版Material-ui,它应该可以工作。无需回滚到以前的提交。
答案 4 :(得分:1)
我认为问题出在jss和@material-ui/core
中的Box组件
在修复之前,我已经安装了styled-components
并重写了Box组件:
import {
borders,
BordersProps,
display,
DisplayProps,
flexbox,
FlexboxProps,
palette,
PaletteProps,
positions,
PositionsProps,
shadows,
ShadowsProps,
sizing,
SizingProps,
spacing,
SpacingProps,
typography,
TypographyProps,
} from '@material-ui/system';
import styled from 'styled-components';
/*
* Box with styled-components
*/
export const Box = styled.div<
BordersProps & DisplayProps & FlexboxProps & PaletteProps & PositionsProps & ShadowsProps & SizingProps & SpacingProps & TypographyProps
>`${borders}${display}${flexbox}${palette}${positions}${shadows}${sizing}${spacing}${typography}`;
答案 5 :(得分:1)
尝试将12/$B$18
升级到=IF($B$18=26,$B$20+14*[@[Payment Period]],
EDATE($B$20,VLOOKUP($B$18,{1,12;4,3;12,1},2,FALSE)*[@[Payment Period]]))
。如果不起作用,请将material-ui
添加到您的4.8.1
中作为临时解决方案。
答案 6 :(得分:-1)
也面临同样的问题。我在@ material-ui / core ^ 4.7.1上,我只是去实验并删除了锁定文件和node_modules。然后我遇到了问题。 似乎问题出在@ material-ui / styles最新版本上。
通过将更新@ material-ui / core到4.6.1,删除锁定文件和node_modules,重新安装软件包来解决该问题。
答案 7 :(得分:-1)
快速解决方法:从dynamicSheet.update(props)删除属性“ .attach()”。 不建议用于生产环境,但是,它是任何本地开发环境的快速修复。
答案 8 :(得分:-1)
使用npm:
1-删除node_modules文件夹和package-lock.json文件
2-打开package.json文件
3-更改或添加以下依赖项:“ @ material-ui / core”:“ ^ 4.6.1”,
4- npm i
解决了我的问题。