我创建了一个我用npm run build
在线部署的react-app,现在在本地一切正常,但是当我尝试在我的应用上加载页面时,它在Container.js
中给出了错误(不知道是什么该文件及其用途)
我试图重新安装所有的node_modules而没有任何结果,所以我重新克隆了我的仓库,但仍然没有任何结果
Container.js:
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
var _reactRedux = require('react-redux');
var _Container = require('../components/Container');
var _Container2 = _interopRequireDefault(_Container);
function _interopRequireDefault(obj) {
return obj && obj.__esModule ? obj : {
default: obj
};
}
/**
* src/containers/Container.jsx
*/
var mapStateToProps = function mapStateToProps(store, ownProps) {
return {
items: store[ownProps.reduxStoreName].content[ownProps.reduxUid].filter(function (item) {
return item.parentId === ownProps.itemId;
})
};
};
exports.default = (0, _reactRedux.connect)(mapStateToProps)(_Container2.default);
控制台错误:未捕获(承诺)TypeError:无法读取未定义的属性'filter'
答案 0 :(得分:0)
好吧,就像他的评论中提到的@Pointy一样,它基本上意味着store[ownProps.reduxStoreName].content[ownProps.reduxUid]
是未定义的。
导致错误的不是文件,而是其特定的行。当代码到达此行并尝试执行时-store[ownProps.reduxStoreName].content[ownProps.reduxUid]
参数未定义,因此会崩溃。
我们无法告诉您错误在哪里,我们需要整个应用程序的代码来遵循执行流程。 您必须自己跟随它,并了解为什么代码到达那里时,该变量中为什么没有数组。
一般而言,尝试找出以下内容:
何时在何处初始化该变量?
何时何地调用mapStateToProps?
您是否绝对确定在回答问题2的代码之前先执行回答问题1的代码? (也许您没有想到一个异步执行问题,这会导致您的代码以错误的顺序执行)
,如果是这样-也许您在开始时初始化这些变量的方式不正确?也许您使用第3方库/函数来初始化它们,但实际上并没有得到您期望的结果?还是您使用错误,或分析结果错误?