gpt4 book ai didi

javascript - 使用 ES6 模块进行参数导入?

转载 作者:行者123 更新时间:2023-12-02 16:12:02 24 4
gpt4 key购买 nike

ES6 为 Javascript 带来了一个很好的模块系统。模块定义如下:

export default {
....
};

可以使用 import myLib from "myModule" 轻松导入到源中.

但是如果模块导出一个像这样的“构造函数”函数怎么办:

export default ( actions ) =>  Reflux.createStore ( {

state: {
.....
},

config: {
.....
},

init: function() {
this.listenToMany ( actions );
},
}

您可以导入构造函数,然后使用它来执行它

import MyStoreConstructor from "./datastore";
var store = MyStoreConstructor(actions);

有没有更优雅的方法来做到这一点?

最佳答案

你并没有真正导出一个构造函数,它更像是一个工厂(并且应该使用小写以获得良好的风格),并且我认为它不会变得比这更 slim 。工厂如何知道这些行动?此外,模块最多只评估一次(至少在我知道的每个模块系统中)以避免不必要的副作用 - 每个后续请求都将获得某种缓存版本。您可以使用依赖注入(inject)库,例如 angularjs有,但这是一个与模块不同的概念。

关于javascript - 使用 ES6 模块进行参数导入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30077673/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com