使用immer.js-在状态相同的数组引用中重新分配草稿数组引用结果

时间:2019-03-21 10:12:00

标签: angular ngrx immer.js

我使用immer.js的Produce方法进行了此失败的测试:

     it('should replace array reference in state', () => {
        let state = {
            someArray: [1],
        };
        const somArrayUpdate = [2, 3];

        state = produce(state, draft => {
            draft.someArray = somArrayUpdate;
        });
        console.log(state.someArray);
        // update external array
        somArrayUpdate.push(4);
        // expect that the state array is not the same reference with the external array
        console.log(state.someArray);
        expect(state.someArray).not.toBe(somArrayUpdate);
    });

您可以在此处查看失败的测试:

https://stackblitz.com/edit/jasmine-gwrbgh

我试图了解为什么这不起作用,以及如何使用immer.js执行阵列替换(文档AFAIK中没有相关示例)。

0 个答案:

没有答案