每当我尝试使用以下方法扩展另一个 Nuxt 3 项目时:
export default defineNuxtConfig({ // this is inside the nuxt.config.ts in `main-project`
extends: [
'../test-extend'
]
})
我收到一条错误,指出找不到模块(例如:无法启动 nuxt:找不到模块 '@vueuse/nuxt')
我的目录结构如下所示:
📂
├── 📂 test-extend/
└── 📂 main-project/
我做错了什么吗?我尝试将
test-extend
项目放入 main-project
中,看看路径是否没有问题,但这也没有帮助...
经过一些实验,我发现当我将父层(
test-extend
)的依赖项添加到main-project
时,错误消失了。回想起来,这似乎是一个非常明显的解决方案,但是,我认为这是一个错误,因为文档提到“创建 Nuxt 模块预设”作为 Nuxt Layers 的功能之一,而且我不认为这真的是“创建模块预设”,如果我必须记住层中安装了哪些依赖项,然后手动将它们添加到新项目中。
更新:您现在可以指示Nuxt在配置中安装扩展项目的依赖项,不再需要在两个项目中安装所有依赖项。
此片段摘自 Nuxt 的图层文档:
使用 git 远程源时,如果某个层具有 npm 依赖项并且您希望安装它们,则可以通过在层选项中指定 install: true 来安装它们。
export default defineNuxtConfig({
extends: [
['github:username/repoName', { install: true }]
]
})