Javascript 为什么这段代码会重复?
在上找到以下代码段 为什么作者将Javascript 为什么这段代码会重复?,javascript,ecmascript-6,Javascript,Ecmascript 6,在上找到以下代码段 为什么作者将initialCreateStore导入为createStore,然后将相同的结果重新分配给createStore 从一开始就导入createStore不会做同样的事情吗 为什么作者将initialCreateStore导入为createStore 他没有,相反。import正在模块范围内创建一个initialCreateStore绑定 为什么他要将相同的结果重新分配给createStore 因为冗长。他想明确表示,这只是导出绑定的初始值 从一开始就导入crea
initialCreateStore
导入为createStore
,然后将相同的结果重新分配给createStore
从一开始就导入createStore
不会做同样的事情吗
为什么作者将initialCreateStore
导入为createStore
他没有,相反。import
正在模块范围内创建一个initialCreateStore
绑定
为什么他要将相同的结果重新分配给createStore
因为冗长。他想明确表示,这只是导出绑定的初始值
从一开始就导入createStore
不会做同样的事情吗
否,因为在ES6中,导入的绑定是“不可变的”——它们可以更改(如果它们在导出它们的模块中更改),但不能在导入模块中分配到它们。但是,作者确实希望在出现
\uu DEV\uuu
的情况下用自己的来覆盖createStore
,因此他确实需要声明自己与导出的绑定,让createStore
非常感谢,这是有意义的。我仍在尝试适应这种语法:)
import React from 'react';
import { createStore as initialCreateStore, compose } from 'redux';
export let createStore = initialCreateStore;
if (__DEV__) {
createStore = compose(
require('redux-devtools').devTools(),
require('redux-devtools').persistState(
window.location.href.match(/[?&]debug_session=([^&]+)\b/)
),
createStore
);