Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Npm 发生反应-缩小的异常_Npm_Reactjs_Browserify - Fatal编程技术网

Npm 发生反应-缩小的异常

Npm 发生反应-缩小的异常,npm,reactjs,browserify,Npm,Reactjs,Browserify,我已经通过NPM安装了React js,并使用browserify管理React中的组件。当React中发生异常时,控制台显示为 “未捕获错误:发生了缩小的异常;请使用未缩小的开发人员。” 完整错误消息和其他有用信息的环境 警告。” 如何启用完整的错误消息?将NODE_ENV设置为development,正如Benjamin Grunbaum在评论中指出的那样,解决了这些问题 set NODE_ENV=development 我终于解决了这个问题 如果您和我一样,运行了该命令来设置NODE_E

我已经通过NPM安装了React js,并使用browserify管理React中的组件。当React中发生异常时,控制台显示为

“未捕获错误:发生了缩小的异常;请使用未缩小的开发人员。” 完整错误消息和其他有用信息的环境 警告。”


如何启用完整的错误消息?

将NODE_ENV设置为development,正如Benjamin Grunbaum在评论中指出的那样,解决了这些问题

set NODE_ENV=development

我终于解决了这个问题

如果您和我一样,运行了该命令来设置NODE_ENV,但实际上从未运行过,请检查您是否链接到react.min.js而不是文件的完整版本


链接到完整版本,它应该像一个符咒一样工作D

如果您使用jspm捆绑代码,请注意0.16.24版导入React的精简“生产”版本,这会引发此错误。我的临时解决方案是将jspm降级到0.16.23


编辑jspm的未来版本将允许您声明生产版本与开发版本(请参阅)

我有这个问题,对我来说,我不需要禁用缩小或使用react source。我的脚本刚刚加载到根元素之前。因此,我只是将脚本从索引文件源代码的head和div下面移出,这就解决了它

已从此更改我的index.jade:

html
 head
   title Super coo site
   script(src="bundle.js")
 body
   div#root
为此:

html
 head
   title Super coo site
 body
   div#root
   script(src="bundle.js")

当我的render方法返回
undefined
eg时,我遇到了这个错误

render() {
    let view;
    // Not paying attention and slip a case where view won't get assigned a value
    if(this.props.foo == 'hello') {
        view = <HelloView />
    }
    else if(this.props.foo == 'bye') {
        view = <ByeView />
    }
    return view;
}
render(){
让我们看看;
//未引起注意,并在视图未指定值的情况下滑倒
如果(this.props.foo=='hello'){
视图=
}
else if(this.props.foo=='bye'){
视图=
}
返回视图;
}

当This.props.foo为“hi”时,这将触发错误。

是否检查了尝试渲染的DOM元素?由于一个愚蠢的错误,我以前犯过这个错误。最糟糕的是捆绑包被缩小了。元素id不相同

Index.html

<div id="ds-app"></div>

app.jsx

React.DOM.render(<App/>, document.getElementById('app'))
React.DOM.render(,document.getElementById('app'))

如果您在Karma+网页包中遇到此问题,以下网页包配置为我在运行测试时修复了此问题:

plugins: [
    new webpack.DefinePlugin({
        'process.env': {
            NODE_ENV: JSON.stringify('development')
        }
    })
]
从开始,production React错误消息(
NODE_ENV=production
)现在包含一个URL,您可以访问该URL,在那里可以看到原始的未模糊错误


您应该考虑升级以反应15.2,以便访问这些错误消息。此外,还为您提供了一些生产崩溃报告工具。

在生产中使用min.js文件,或者将您的应用程序代码与
process.env.NODE\u env==='production'
捆绑在一起,您应该准备好了

如果您的package.json脚本有
dll
,请尝试exec
npm-run-dll
warn-run-dll

,它告诉您,“使用非小型开发环境获取完整的错误消息和其他有用的警告。”这是关于使用react with browserify的文档的第一页-您的
NODE_ENV
是否设置为
production
?非常欢迎,现在我可以写一个答案了,但我认为用问答的方式写这个答案会更有价值。更好的问题:为什么缩小的异常不能有堆栈跟踪?在开发模式下没有异常发生时,这是一个相当大的问题……我从我的package.json执行set NODE_ENV=development&&NODE app.js,但仍然只得到最小的错误:(在gulpfile中,我确实执行了
process.env.NODE_env='development'
,但仍然收到了一条通用消息??您可以尝试在命令提示符下执行
set NODE_env=development
并查看吗?我在项目的基本目录下的命令提示符下写下了这条消息。但是,它似乎没有任何效果。(我使用的是Windows 7)如果这个不适合你。“WTF为什么我会出现这个错误?”让我快速查看一下StackOverflow-哦,snap-我在评论中回答了它。我的生活故事-你介意解释一下你是如何链接到完整版本的吗?你是否
需要('./node\u modules/react/dist/react.js')
?在使用脚本标记src属性的html中,我没有链接到完整版本,我使用的是生产版本。这是在我理解如何使用bower之前,所以我不理解其中的区别。这是真的,请检查您是否在呈现函数中使用了一些尚未创建或未定义的变量,这确实是一个误导性错误或者消息,但这对meIt很重要,为了这个答案,他特别提到了生产模式中的错误消息,这一点确实是相关的。