如何在`defaultProps`中引用`defaultProps`?

时间:2017-01-23 14:21:00

标签: javascript reactjs

如何在defaultProps内引用defaultProps?即。

work.defaultProps = {
    start_date: moment().format('YYYY-MM-DD') || '',
    start_time: this.defaultProps.start_date.format('h:mm a')
};

1 个答案:

答案 0 :(得分:1)

"这"不会为你工作,因为它指的是运行代码的上下文,而不是你实例化的对象。

这可能有效

work.defaultProps = {
    start_date: moment().format('YYYY-MM-DD') || '',
    start_time: work.defaultProps.start_date.format('h:mm a')
};

但是,最好不要依赖对象成员的初始化顺序。

更安全,但不那么优雅的方式是

work.defaultProps = {}
work.defaultProps.start_date = moment().format('YYYY-MM-DD') || '';
work.defaultProps.start_time = work.defaultProps.start_date.format('h:mm a');