导入类并使用带有Babel Transpiler的es6模块调用静态方法

dagda1

我有以下类定义:

class EmberReflux{
  static createActions(actions) {
    console.log(actions);
  }
}

export { EmberReflux };

当我从其他文件导入时:

import EmberReflux from '../utils/ember-reflux';

let TodoActions = EmberReflux.createActions(
[
  "addItem",
  "undo",
  "redo"
]);

export { TodoActions };

转译的样子是这样

define('ember-reflux/utils/todo-actions', ['exports', 'ember-reflux/utils/ember-reflux'], function (exports, EmberReflux) {

    'use strict';

    var TodoActions = EmberReflux['default'].createActions(["addItem", "undo", "redo"]);

    exports.TodoActions = TodoActions;

});

我不确定默认值是多少 EmberReflux['default']

我想这样调用静态类方法:

EmberReflux.createActions

但是相反,我必须这样称呼它:

EmberReflux.EmberReflux.createActions
爆炸物

您有两种选择:

  1. EmberReflux像执行操作一样导出

    export { EmberReflux };
    

    然后像这样导入它:

    import { EmberReflux } from '../utils/ember-reflux';
    
  2. default导出时使用

    export default EmberReflux;
    

    并导入它(就像您正在做的那样):

     import EmberReflux from '../utils/ember-reflux';
    

在这两种情况下,您都可以使用EmberRefluxlike:

EmberReflux.createActions();

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用ES6模块导出/导入单类方法?

来自分类Dev

ES6模块:导出单个类的静态方法或多个单独的方法

来自分类Dev

在类React ES6中调用静态函数

来自分类Dev

如何使用Mocha测试ES6模块(带有导入功能)?

来自分类Dev

使用JavaScript ES6模块导入现有库

来自分类Dev

未使用Node + ES6 + Babel定义的类方法

来自分类Dev

使用ES6类反应静态

来自分类Dev

在ES6模块中导入同名功能的最佳方法

来自分类Dev

导入es6模块的最佳方法是什么?

来自分类Dev

在es6 javascript类的非静态成员函数中调用静态getter

来自分类Dev

带有仅静态方法的类的模块

来自分类Dev

尝试将类导出为模块ES6 babel

来自分类Dev

如何从静态方法ES6类返回非静态变量

来自分类Dev

ES6解构和模块导入

来自分类Dev

ES6:从URL导入模块

来自分类Dev

ES6模块与HTML导入

来自分类Dev

ES6模块与HTML导入

来自分类Dev

在ES6类中未使用static.js中的装饰器定义静态方法

来自分类Dev

从模块覆盖/装饰 ES6 类

来自分类Dev

NodeJS ES6:类模块导出

来自分类Dev

带有导入类方法的Python类型提示

来自分类Dev

使用ES6语法动态导入JavaScript模块?

来自分类Dev

使用ES6语法和动态路径导入模块

来自分类Dev

如何测试使用jsdom导入jQuery的ES6模块

来自分类Dev

使用ES6静态函数时出现“没有这样的方法”

来自分类Dev

仍然需要带有使用JavaScript ES6模块和类的应用程序的模块加载器吗?

来自分类Dev

仍然需要带有使用JavaScript ES6模块和类的应用程序的模块加载器吗?

来自分类Dev

使用ES6模块的CreateJS

来自分类Dev

在Express中使用ES6模块