Jam*_*lly 3 javascript ecmascript-6 babeljs
我有一个 JavaScript 文件,其中包含以下内容:
const api = {
call(type, url, data) {
console.log(type + "bar");
},
get(url, query) {
this.call("foo");
}
}
Run Code Online (Sandbox Code Playgroud)
我希望能够api.get()在必要时跨多个不同的文件进行调用,但我在导入时遇到问题。
import当我尝试访问变量时,单独加载文件会给我一个 ReferenceError api:
import "services/api.js";
console.log(api);
Run Code Online (Sandbox Code Playgroud)
未捕获的引用错误:api 未定义
给导入一个名称(of api)会返回一个对象,但它没有内部方法:
import api from "../../services/api.js";
console.log(api);
console.log(api.get);
Run Code Online (Sandbox Code Playgroud)
对象 {}
未定义
我究竟做错了什么?
你api.js没有出口任何东西。您应该重写它以导出以下每个函数:
export function call(type, url, data) {
console.log(type + "bar");
}
export function get(url, query) {
call("foo");
}
Run Code Online (Sandbox Code Playgroud)
(这比默认导出对象文字要好得多api)
然后你可以像这样使用它
import * as api from "../../services/api.js";
console.log(api);
console.log(api.get);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14059 次 |
| 最近记录: |