我创建了一个模块,在其中我保留了调用api的函数。在“要求”它时,我收到以下错误:
./src/Components/Search/SearchPage.js
Module not found: Can't resolve '../utils/api' in 'C:\Users\riksch\Dropbox\projects\Current\greenmp\frontend\src\Components\Search'
我的主要问题是:如何将api模块正确导入SearchPage.js?
以下是我项目的结构:
我突出显示了我使用的文件,1是我导入(需要)的文件,2是我尝试导入的模块。
之前有效,但是现在我改变了文件夹结构,即使在调整路径之后,我也无法理解它。
我尝试了不同的导入路径,都有相同的错误。
SearchPage.js需要声明
const api = require('../utils/api')
api.js
var axios = require('axios')
module.exports = {
retrievePlants: function(search_query, locale) {
console.log("api.retrievePlants executes")
console.log("url: " + 'http://127.0.0.1:8000/search/'+locale+'/'+search_query)
//FIXME: hardcoded URL HOST
// return axios.get('https://127.0.0.1/search/'+locale+'/'+search_query)
return axios.get('http://127.0.0.1:8000/search/'+locale+'/'+search_query)
.then(function(response) {
console.log("response.data:")
console.log(response.data)
return response.data
})
.catch(function(error) {
console.log("Error in Components.utils.api.retrievePlants:")
console.log(error)
console.log("console.log(error.response.data):")
console.log(error.response.data)
})
},
}
答案 0 :(得分:6)
你必须去两个目录,如下所示
const api = require('../../utils/api');
它会起作用。