Javascript 将es5迁移到es6导出默认值

Javascript 将es5迁移到es6导出默认值,javascript,ecmascript-6,es5-shim,Javascript,Ecmascript 6,Es5 Shim,我正在尝试将一段代码从es5迁移到es6,这两方面我都是新手,如果有人能帮助我,我将非常感谢 es5版本: lib.js module.exports = { foo1: function () { this.foo2() { ... } }, foo2: function () { ... } } main.js const Lib = require("./lib"); Lib.fo

我正在尝试将一段代码从es5迁移到es6,这两方面我都是新手,如果有人能帮助我,我将非常感谢

es5版本:

lib.js

module.exports = {
    foo1: function () { 
        this.foo2() {
           ... 
        }
    },
    foo2: function () { 
        ...
    }
}
main.js

const Lib = require("./lib");
Lib.foo1( { ... });
es6版本-我正在尝试:

lib.ts

export default { 
    foo1() {
        this.foo2(() => {
            ... 
        });                 
    },
    foo2(){ ... }
}
梅因酒店

import * as Lib from "./lib";
Lib.foo1({ ... })
这是我的主要问题。问题1无法解决。 有什么想法或建议吗

谢谢!

应该是公正的

import Lib from "./lib";

否则,如果使用
*作为
符号,则可以使用
Lib.default
访问
default
导出,但这是不必要的。

我不理解代码的以下部分:

foo1: function () { 
    this.foo2() {
       ... 
    }
}
这似乎是无效的

无论如何,不要引入您自己的伪模块式结构。没必要
lib.js
已经是一个模块

lib.js

export function foo1() {
    foo2();
}
export function foo2() { ... }
import {foo, foo2} from './lib';
main.js

export function foo1() {
    foo2();
}
export function foo2() { ... }
import {foo, foo2} from './lib';
尝试从“/Lib”导入库