es6中的import 和 export

// 文件名LibraryReducer.js
import data from './LibraryList.json';

export default () => data;

一个react-native项目里关于redux的一段代码,就简单地引入json数据,然后输出
我想知道:

  1. 这里为什么用了一个剪头函数?为什么直接export default data不可以?
  2. 还有在json文件里面并没有export,为什么在这里就可以直接import?
// 这是调用用的代码
export default combineReducers({
    libraries: LibraryReducer
});

谢谢各位

阅读 3.2k
3 个回答
  1. import是es的语法没错。但是webpack下的import是会经过webpack处理的,它把所有的资源都当成模块,你甚至可以导入一个图片文件。不知道loader里有没有配json的loader。不过新的webpack好像能直接导入json了,还是能解构的这句话不太确定,可能不需要配loader了,现在各种工具变动挺大的,我也搞不清。
  2. 应该可以直接导出data吧,可能外部接收的地方是个函数调用,你看看其他使用这里的代码咋写的。

json文件并非js文件,所以自然不能/也不需要export吧
把匿名函数export出去,应该如楼上所说

我猜你应该没好好看ES6。看最近两个关于ES6的问题都是你提的。。。。。看别人源码,第一是思路(这个源码是干什么的,解决什么),第二是关键代码(需要比较扎实的JS)

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题