Javascript 向空对象添加新的键值对抛出TypeError为null错误

Javascript 向空对象添加新的键值对抛出TypeError为null错误,javascript,reactjs,mobx,Javascript,Reactjs,Mobx,这是我的mobx商店,我正试图在react应用程序中使用它: import {observable, computed, action, decorate} from 'mobx'; class Cart { cart = 0; product = {}; loaded = false; addCart(product, amount) { if(this.product === null) { this.produc

这是我的mobx商店,我正试图在react应用程序中使用它:

import {observable, computed, action, decorate} from 'mobx';

class Cart {
    cart = 0;
    product = {};
    loaded = false;


    addCart(product, amount) {
        if(this.product === null) {
            this.product[product] = Number(amount);
        } else {
            if (product in this.product) {
                this.product[product] = this.product[product] + Number(amount);
            } else {
                this.product[product] = Number(amount);
            }
        }
        localStorage.setItem('product', JSON.stringify(this.product));
        this.cart = this.cart + Number(amount);
    }
}

export default Cart = decorate(Cart, {
    cart: observable,
    product: observable,
    addCart: action
})
当我试图从组件添加一些数据时,比如
addCart(4,1)
它抛出
TypeError:this.product为null
,错误显示在这个块中

if(this.product === null) {
   this.product[product] = Number(amount);
} 

如果this.product为null,则必须先将其设置为空数组,然后才能分配数组元素:

addCart(product, amount) {
    if(this.product === null) {
        this.product = [];  // <-- INSERT THIS LINE HERE
        this.product[product] = Number(amount);
addCart(产品、金额){
if(this.product==null){

this.product=[];//this.product=[]尝试将此添加到此之前。product[product]=编号(金额);