繁体   English   中英

将 IIFE 格式的 function 导出到 ES6 模块

[英]Exporting IIFE formated function to ES6 Module

在模块/ IIFE 等方面遇到了一些麻烦。我有一个曾经是 IIFE 的脚本,并且使用了很多这个关键字等。我正试图将它变成一个模块。

我有以下模块dice.js

export default function () {
this.createDice = function() { ... }
... 
}

在主应用程序上,我将其称为:

import Dice from "./dice.js";

let DICE = new Dice();
let dice1 = DICE.createDice();
let dice2 = DICE.createDice();

它有效......我的问题是,有没有办法避免创建额外的 DICE 变量来调用所有方法? 换句话说,我想这样称呼它:

import Dice from "./dice.js";

let dice1 = Dice.createDice();
let dice2 = Dice.createDice();

我已经尝试过 IIFE,但无法正确使用。

在 IIFE 你会做

 export default (function () { function Dice() { this.createDice = function() {... }... } return new Dice(); })()

但实际上,只要这样做

 function Dice() { this.createDice = function() {... }... } export default new Dice();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM