导入类和调用静态方法与es6模块与babel transpiler [英] import class and call static method with es6 modules with babel transpiler
本文介绍了导入类和调用静态方法与es6模块与babel transpiler的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有以下类定义:
class EmberReflux {
static createActions(actions){
console.log(actions);
}
}
export {EmberReflux};
当我从其他文件导入时:
从../utils/ember-reflux导入EmberReflux的
让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
解决方案
您有两个选项:
-
导出
EmberReflux
它就像你在做的:export {EmberReflux};
然后将其导入:
<$ p来自'../utils/ember-reflux'的$ p>import {EmberReflux};
-
导出时使用
default
导出默认值EmberReflux;
并导入(就像你在做):
$ b $从../utils/ember-reflux导入EmberReflux; b
在这两种情况下,您都可以使用 EmberReflux
like:
EmberReflux.createActions();
I have the following class definition:
class EmberReflux{
static createActions(actions) {
console.log(actions);
}
}
export { EmberReflux };
When I import it from a different file:
import EmberReflux from '../utils/ember-reflux';
let TodoActions = EmberReflux.createActions(
[
"addItem",
"undo",
"redo"
]);
export { TodoActions };
The transpiled looks like this
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;
});
I'm not sure what the default is in EmberReflux['default']
I want to call the static class method like this:
EmberReflux.createActions
But instead I have to call it like this:
EmberReflux.EmberReflux.createActions
解决方案
You have two options:
Export
EmberReflux
it like you are doing:export { EmberReflux };
and then import it like:
import { EmberReflux } from '../utils/ember-reflux';
Use
default
when exporting:export default EmberReflux;
and import it (like you are doing):
import EmberReflux from '../utils/ember-reflux';
In both cases you can then use your EmberReflux
like:
EmberReflux.createActions();
这篇关于导入类和调用静态方法与es6模块与babel transpiler的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文