Javascript 反应热再装料机3
我正在尝试新功能,并收到一条警告消息: warning.js:44 warning:React.createElement:type不应为null, 未定义、布尔或数字。它应该是一个字符串(对于DOM) 元素)或类(用于复合组件)。检查渲染Javascript 反应热再装料机3,javascript,reactjs,react-hot-loader,Javascript,Reactjs,React Hot Loader,我正在尝试新功能,并收到一条警告消息: warning.js:44 warning:React.createElement:type不应为null, 未定义、布尔或数字。它应该是一个字符串(对于DOM) 元素)或类(用于复合组件)。检查渲染 AppContainer的方法 这是应用程序文件。怎么了? 附:它的书写方式与示例相同。 Ps2:问题不在应用程序中,因为它在if语句外部的render()上呈现 Ps3:警告仅在浏览器尝试“热重新加载”时出现(当我更改任何文件时) 从“React”导入Re
AppContainer
的方法
这是应用程序文件。怎么了?附:它的书写方式与示例相同。
Ps2:问题不在应用程序中,因为它在if语句外部的render()上呈现
Ps3:警告仅在浏览器尝试“热重新加载”时出现(当我更改任何文件时)
从“React”导入React;
从'react dom'导入{render};
从“react hot loader”导入{AppContainer};
从“react-a11y”导入a11y
从“./stores/Store”导入存储;
从“./components/App/App”导入应用程序;
常量存储=新存储();
if(process.env.NODE_env===‘development’){
a11y(反应);
}
渲染(
,
document.getElementById('root'))
);
如果(模块热){
module.hot.accept('./组件/应用程序/应用程序',()=>{
渲染(
,
document.getElementById('root'))
);
});
}
好的,问题出在我的.babelrc文件上。我有一些其他的插件,我已经删除了,它工作了:
{
"presets": ["es2015-loose", "react", "stage-1"],
"plugins": [
"react-hot-loader/babel",
"transform-decorators-legacy"
],
}
component={require('./components/App/App')。default}不应该是component={App}?再次要求相同的组件(内联,请注意)并尝试使用.default属性的目的是什么?它是如何在示例中编写的。如果我更改为component={App},我不会收到错误,但是组件也不会热重新加载。我明白了。。。这是对hotloader工作方式的重大升级,它在alpha atm中。。。您能否验证package.json文件中的热加载程序版本以及webpack/babel config中的插件/条目数组?它与另一个babel插件(添加模块导出)冲突。我已经删除了它,现在它可以工作了。如果你列出你删除了哪些插件,那会更有帮助。
{
"presets": ["es2015-loose", "react", "stage-1"],
"plugins": [
"react-hot-loader/babel",
"transform-decorators-legacy"
],
}