You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Turbo+pnpm运行Storybook时加载@storybook/react-vite预设失败

解决Turbo+pnpm环境下Storybook预设加载失败与构建器配置错误

问题原因

核心问题是pnpm的依赖挂载模式(hoisted)与Turbo执行环境结合时,Storybook无法找到@storybook/react-vite/preset模块,进而触发构建器配置失败。可能诱因包括依赖安装不完整、旧版本Storybook兼容bug,或Turbo对长运行服务的配置缺失。

解决方案

1. 清理并重新安装依赖

确保依赖无损坏或缺失:

  • 删除根目录的node_modules、pnpm-lock.yaml,以及apps/workshop/node_modules
  • 在项目根目录执行:
    pnpm install
    

2. 验证单独运行Storybook

进入apps/workshop目录,执行本地开发命令确认依赖本身无问题:

pnpm dev

若能正常启动Storybook,说明问题出在Turbo执行配置;若仍报错,需排查依赖安装或版本问题。

3. 调整Turbo配置支持长运行服务

在根目录turbo.json中,为dev任务添加persistent: true,告知Turbo这是持续运行的服务:

{
  "$schema": "https://turbo.build/schema.json",
  "globalDependencies": ["**/.env.*local"],
  "pipeline": {
    "build": {
      "dependsOn": ["^build"],
      "outputs": ["dist/**", ".next/**", "!.next/cache/**", "storybook-static/**"]
    },
    "lint": {
      "outputs": []
    },
    "dev": {
      "cache": false,
      "persistent": true
    }
  }
}

4. 强制调用本地Storybook二进制文件(可选)

若Turbo仍调用根目录全局Storybook而非workspace内版本,修改apps/workshop/package.json的dev命令:

"scripts": {
  "dev": "pnpm exec storybook dev -p 6006",
  "build": "pnpm exec storybook build",
  "preview": "vite preview"
}

5. 升级Storybook到稳定版本(可选)

旧版本Storybook 7.0.2存在pnpm workspace兼容bug,升级到最新稳定版:
在apps/workshop/package.json中将所有Storybook相关依赖版本改为^7.6.0,再执行pnpm install。

6. 验证Turbo运行

回到项目根目录,重新执行:

turbo run dev

内容的提问来源于stack exchange,提问作者CGalaxy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 15:24:56