this
がReactコンポーネントのマイストアにnull
を返している問題が発生しています。私はこれを縛る必要があると信じていますが、わかりません。また、私はReact Routerを使用しています。コンポーネントをラッパーにセットしておくと、私はそれに小道具を渡すことができます。どんな助けもありがとう!あなたが実際にそれをバインドする必要があるようReact Storeが `this`の値に対してnullを返す
COMPONENT
import React from 'react';
import PaymentStore from './../store/paymentStore';
class InitialPaymentScreen extends React.Component {
constructor(props) {
super(props)
}
render() {
console.log(this.props)
return (
<div className="payment-form-submit" onClick={this.props.store.init}>Next</div>
);
}
}
class PaymentForm extends React.Component {
constructor(props) {
super(props)
}
render() {
return (
<section className="main-content payment-form-wrapper">
<InitialPaymentScreen store={this.props.store}/>
</section>
);
}
}
export default class PaymentFormWrapper extends React.Component {
render() {
return (
<PaymentForm store={PaymentStore} mode="foo"/>
);
}
}
STORE
let PaymentStore = {
handleClickNext() {
console.log("hello")
},
init() {
console.log(this) // returns null
this.handleClickNext(); // cannot read property of null
},
};
export default PaymentStore;
素晴らしい、魅力的な作品。なぜ私はこれを縛らなければならないのかを明確にすることができますか? – u111937
確かに、私はいくつかの背景で私の答えを更新しました! –