我使用const initialState = new Map({
data: null,
page: 1,
...
});
来保持我的应用程序状态。它由多个组合缩减器组成,这些缩减器是不可变的映射,如:
case FETCH_RESPONSE:
return state.merge({
rawRequestResponse: action.response // very slow, deep conversion to Immutable
})
case FETCH_RESPONSE:
return state.set({
rawRequestResponse: action.response // also slow, it's converted to Immutable, though not deeply
})
case FETCH_RESPONSE:
return new Map({
rawRequestResponse: action.response, // just like above
...
})
所以每当网页上的某些内容发生变化时,我都需要获取请求响应,保存到某处,从中获取数据并更新状态。
问题是 - 我在哪里保留rawx中的原始请求响应?
让我们说,我想把它保持在州内。我尝试了以下方法:
jQuery(document).ready(function ($) {
$('li.menu-item-type-custom').on('click', function () {
$(this).children('ul.sub-menu').slideToggle();
});
});
但他们都太慢了。最好的方法是什么?
答案 0 :(得分:0)
不确定是否将普通对象传递给set()
,但如果将该键作为字符串传递,则该值作为第二个参数,则不应转换任何内容:
return state.set('rawRequestResponse', action.response)