我正在尝试使用 Gridsome 和 Vue.js 进行相当大的网站转换。该网站需要能够从 API 加载数据。我一直在尝试遵循https://gridsome.org/docs/fetching-data/#import-from-apis上的说明- 我粘贴了示例代码。
但是,当我尝试运行 gridsome develop 时出现此错误
C:\projects\folder\project>gridsome 开发 Gridsome v0.6.9
正在初始化插件... Initialize - 0.97s TypeError: actions.addCollection is not a function at api.loadSource (C:\projects\VueJS-Research\my-gridsome-test-VS\gridsome.server.js:17:36)在 process._tickCallback (internal/process/next_tick.js:68:7)
作为 Vue.js 的新手,我不确定这里发生了什么。有我丢失的包裹吗?
我不得不说,如果遵循文档会导致这些问题,我可能不得不得出结论,Gridsome 还不够成熟,无法在商业环境中使用,我们可能不得不寻找其他地方。
任何帮助将不胜感激,谢谢。
gridsome.server.js 文件中的代码:
const axios = require('axios')
module.exports = function (api) {
api.loadSource(async actions => {
const { data } = await axios.get('http://dev.client.local/api/items/suggestitems?family=someCategory')
const collection = actions.addCollection({ typeName: 'clientItems' })
for (const item of data) {
collection.addNode({
label: item.label,
labelNoFamily: item.labelNoFamily,
path: item.path
})
}
})
//api.loadSource(({ addContentType }) => {
// // Use the Data Store API here: https://gridsome.org/docs/data-store-api
//})
api.createPages(({ createPage }) => {
// Use the Pages API here: https://gridsome.org/docs/pages-api
})
}