javascript - react 组件: cannot read property of undefined error

标签 javascript reactjs export render

我目前在另一个组件中渲染 React 包装器组件时遇到问题。基本上,我导出默认包装器组件(CreatePage),然后尝试将其导入到另一个组件(EditPage),但收到错误“无法读取属性pageType”不明确的。” pageType 是我定义的 CreatePage 的一个 Prop ,但奇怪的是我在两个组件的渲染函数中都有调试器,但都没有被命中,所以我认为组件本身对于某些人来说存在问题原因但我不确定是什么。以下是 EditPage 中一些上下文的代码:

import React, { Component, PropTypes } from 'react';
import CreatePage from './CreatePage';
import withResource from '../../../../lib/withResource';


export class EditPage extends Component {
    constructor(props){
        super(props);
    }

    render() {
        debugger;
        return (
            <div>
                <CreatePage pageType={'edit'}/>
            </div>
        );
    }
}

export default withResource(
{
    name: 'EditResource',
    key: 'hello',
    }, 
EditPage);

CreatePage 代码:

export default class CreatePage extends Component {

    constructor(props) {
        super(props);
    }

    headerTitles = {
        'create': i18n._('Create', '[m10n]'),
        'edit': i18n._('Edit', '[m10n]'),
    }

    renderHeader(pageType) {
        return (
            <div className={cx('headerWrapper')}>
                <div className={cx('header')}>
                    <div className={cx('title')}>
                        {this.headerTitles[pageType]}
                    </div>
                </div>
            </div>
        );
    }

    renderCreateEditPage(pageType) {
        return (
            <div>
                {this.renderHeader(pageType)}
                <div className={cx('contentWrapper')}>
                    <div>
                        <NameTag type={'pageType'}/>
                    </div>
                </div>
            </div>
        );
    }

    render() {
        return (
            <div className={cx('pageWrapper')}>
                {this.renderCreateEditPage(this.props.options.pageType)}
            </div>
        );
    }
}

最佳答案

CreatePage 正在查找 this.props.options.pageType 但您只是直接传入 pageType.. 没有提及 options 属性

关于javascript - react 组件: cannot read property of undefined error,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38678644/

相关文章:

javascript - 无法重置 iframe 内容

javascript - 当我在主窗口上按下暂停时,倒计时器在其他窗口上更新

javascript - 如何正确从 gl-matrix.js 导入?

mongodb - 如何将 mongodb 字符集设置为 utf8?

javascript - 实现 css slider 不工作,显示灰色背景

javascript - React+Redux 中数据更改时更新状态

javascript - 将 "active"类属性添加到 React 中的单击项

javascript - 如何在从 Redux 商店收到错误消息 Prop 后仅显示一次 Toast

javascript - reactjs onClick 处理程序未附加在 Windows 8 和 7 上的 IE11 上

json - 将整个 Neo4j 数据库/密码结果导出到 GraphJSON