Javascript-TypeError:loadData.getData不是函数



我正试图从url中获取json文件格式,但我希望函数在类中,但我在输出时遇到了一个未定义的东西,以下是我所有的代码:

const axios = require('axios');
var BASE_URL = 'https://estra-api.herokuapp.com/'

class loadData {
constructor() {
self.sfw = {};
self.nsfw = {};
}
getData(){
axios.get(BASE_URL)
.then(function data (response) {
return response.data["link"]
})
}
}
console.log(loadData.getData())

我的输出错误是

console.log(loadData.getData())
^
TypeError: loadData.getData is not a function
at Object.<anonymous> (C:UsersStawaDesktopEstraMainAPIEstraJS-APIindex.js:20:22)
at Module._compile (internal/modules/cjs/loader.js:1085:14)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10)
at Module.load (internal/modules/cjs/loader.js:950:32)
at Function.Module._load (internal/modules/cjs/loader.js:790:12)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:76:12)
at internal/main/run_main_module.js:17:47

我试着使用console.log(loadData.getData),它只是给我输出undefined

我认为您的代码应该是这样的:

new loadData().getData();
loadData是一个类。这意味着您需要在读取它们的属性之前初始化这个类。像这样:

class loadData {
constructor() {
self.sfw = {};
self.nsfw = {};
}
getData(){
axios.get(BASE_URL)
.then(function data (response) {
return response.data["link"]
})
}
}
const ld = new loadData()
console.log(ld.getData())

最新更新