声明:本文优快云作者原创投稿文章,未经许可禁止任何形式的转载,原文链接
在api.js下声明了
const getUserInfo = function () {
//do something
}
module.exports = {
getUserInfo: getUserInfo
}
然后在entity.js中声明
//下面写法是错误的
import {
getUserInfo
} from "./api"
class User {
constructor() {}
id
name
getInfo() {
return new Promise((resolve, reject) => {
getUserInfo().then((res) => {
resolve(res.data)
})
})
}
}
声明了User对象后调用getInfo()是报错说getUserInfo()不存在,其实是因为在User这个类中并不能拿到外部引入的内容,所以在class内部引入getInfo()即可:
//下面写法是正确的
class User {
constructor() {}
id
name
getInfo() {
return new Promise((resolve, reject) => {
const api = require("./api") //此处引入api文件,这时就能使用了
api.getUserInfo().then((res) => {
resolve(res.data)
})
})
}
}

本文讨论了在JavaScript中遇到的模块导入问题,特别是在类内部无法直接访问导入的函数。通过示例展示了在类中正确引入并使用外部函数的方法,强调了在类内部需先引入模块才能使用其导出内容的重要性。
1979

被折叠的 条评论
为什么被折叠?



