javascript 使用 index.js 从“/folder”导入

2024-03-11

我注意到在一些案例中我看到过类似以下内容:

// /reducers/reducer1.js
export default function reducer1(state = {}, action){
  // etc...
}
  
// /reducers/reducer2.js
export default function reducer2(state = {}, action){
  // etc...
}

// /reducers/index.js
import { combineReducers } from 'redux';
import reducer1 from './reducer1';
import reducer2 from './reducer2';

export default combineReducers({
  reducer1,
  reducer2
})
  
// /store.js
import masterReducer from './reducers';

export default function makeStore(){
  // etc...
}

注意我们调用的最后一个“文件”import masterReducer from './reducers'- 一些人似乎认为这应该导入default export来自index.js 文件。

这实际上是规范的一部分吗? - 我的解释/问题是,这是许多人使用 WebPack v1 的结果,它翻译import语句转换为 CommonJS 风格requires声明?或者这会破坏 WebPack v2 中的“官方”import/export支持?


这实际上是规范的一部分吗?

编号如何模块标识符('./reducers'在你的情况下)解析为实际模块留给模块加载器/捆绑器的实现,ES6没有指定它。而且似乎没有指定CommonJs http://wiki.commonjs.org/wiki/Modules either.

这就是节点的做法 - 当需要目录时,它是index.js将使用文件。捆绑者喜欢浏览器化 https://github.com/substack/node-browserify#packagejson or webpack https://webpack.github.io/docs/resolving.html#resolving-an-absolute-path遵循此约定(出于兼容性原因)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

javascript 使用 index.js 从“/folder”导入 的相关文章

随机推荐