将 es5 迁移到 es6 export default
Migrating es5 to es6 export default
我正在尝试将代码从 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(){ ... }
}
main.ts
import * as Lib from "./lib";
Lib.foo1({ ... })
问题在我的main.tsfoo1无法解决。
有什么想法或建议吗?
谢谢!
应该只是
import Lib from "./lib";
否则,如果您使用 * as
符号,您可以使用 Lib.default
访问 default
导出,但这是不必要的。
我不明白你代码的以下部分:
foo1: function () {
this.foo2() {
...
}
}
这似乎无效。
总之,不要引入自己的伪模块之类的结构。这不是必需的。 lib.js
已经是一个模块。
lib.js
export function foo1() {
foo2();
}
export function foo2() { ... }
main.js
import {foo, foo2} from './lib';
我正在尝试将代码从 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(){ ... }
}
main.ts
import * as Lib from "./lib";
Lib.foo1({ ... })
问题在我的main.tsfoo1无法解决。 有什么想法或建议吗?
谢谢!
应该只是
import Lib from "./lib";
否则,如果您使用 * as
符号,您可以使用 Lib.default
访问 default
导出,但这是不必要的。
我不明白你代码的以下部分:
foo1: function () {
this.foo2() {
...
}
}
这似乎无效。
总之,不要引入自己的伪模块之类的结构。这不是必需的。 lib.js
已经是一个模块。
lib.js
export function foo1() {
foo2();
}
export function foo2() { ... }
main.js
import {foo, foo2} from './lib';