如何导出es6功能

时间:2017-08-05 08:57:52

标签: javascript node.js module

我正在创建一个带有大量自制函数的npm模块,然后我可以将其导入到其他项目中。它一直在工作,直到我做了一些重构,现在无法解决原因。

这是我的shuffle func声明然后导出

const rhShuffle = function(array) {

}

module.exports = {
  rhShuffle
}

这是我导入它然后再次导出它所以它在项目之外可用。这是路由级别的index.js文件。请注意,当我在这里直接宣布该功能并将其导出时,它工作正常

import rhShuffle from './src/shuffle';

module.exports = {
  rhShuffle
}

然后在我的其他项目中我导入了它并且控制台记录了它并且它说:

_richsHelpers2.default.rhShuffle is not a function

当我登录日志时:

Object {rhShuffle: Object} "rh"

它说它是一个对象

1 个答案:

答案 0 :(得分:1)

选项1: src / shuffle.js

const rhShuffle = function(array) {

}
module.exports = {
  rhShuffle,
}

用法

var rhShuffle = require('./src/shuffle').rhShuffle;

选项2: src / shuffle.js

const rhShuffle = function(array) {

}
export default rhShuffle

用法

import rhShuffle from './src/shuffle';