找不到模块“@storybook/react”或其相应的类型声明。在 Heroku 上
Posted
技术标签:
【中文标题】找不到模块“@storybook/react”或其相应的类型声明。在 Heroku 上【英文标题】:Cannot find module '@storybook/react' or its corresponding type declarations. On Heroku 【发布时间】:2021-11-07 05:35:07 【问题描述】:当我的应用程序部署到 heroku 上并显示下一条消息时,我遇到了问题。
我的应用在我想部署到 Heroku 的 typescript/react 上运行。我在我的应用程序中使用storybook/react
。
这是我的tsconfig.json
文件
"compilerOptions":
"target": "es5",
"lib": [
"dom",
"dom.iterable",
"esnext"
],
"allowJs": true,
"skipLibCheck": true,
"esModuleInterop": true,
"downlevelIteration": true,
"allowSyntheticDefaultImports": true,
"strict": true,
"forceConsistentCasingInFileNames": true,
"noFallthroughCasesInSwitch": true,
"module": "esnext",
"moduleResolution": "node",
"resolveJsonModule": true,
"isolatedModules": true,
"noEmit": true,
"jsx": "react-jsx"
,
"include": [
"src/**/*"
]
我的项目结构是:
- public
- src
- components
- (In here I have all the imports to storybook)
- connectors
- hooks
- layout
- state
- theme
- utils
我在devDependencies
有故事书/反应:
"devDependencies":
"@storybook/addon-actions": "^6.3.1",
"@storybook/addon-essentials": "^6.3.1",
"@storybook/addon-links": "^6.3.1",
"@storybook/node-logger": "^6.3.1",
"@storybook/preset-create-react-app": "^3.1.6",
"@storybook/react": "^6.3.8",
"@types/node": "^16.7.13",
"@types/react-router-dom": "^5.1.7",
"colors": "^1.4.0",
"create-react-component-folder": "^0.3.7",
"husky": "^7.0.1",
"prettier": "^2.3.2",
"yargs": "^17.0.1"
我的 package.json 中的依赖项对象中也有这个:
"@types/jest": "^26.0.23",
"@types/react": "^17.0.11",
"@types/react-dom": "^17.0.8",
我不知道我做错了什么。最糟糕的是,如果我在本地运行应用程序,它可以工作,但在 Heroku 上它就会中断。任何想法这可能是?谢谢!
【问题讨论】:
【参考方案1】:我刚刚检查了Heroku's Documentation,并说devDependencies
在部署之前已被剥离。我认为这是因为 devDependencies
仅用于构建,如果我没记错的话,Storybook 是在运行时使用而不是编译。因此,只需将其从 devDependencies
移至 dependencies
即可。
"dependencies":
"@storybook/addon-actions": "^6.3.1",
"@storybook/addon-essentials": "^6.3.1",
"@storybook/addon-links": "^6.3.1",
"@storybook/node-logger": "^6.3.1",
"@storybook/preset-create-react-app": "^3.1.6",
"@storybook/react": "^6.3.8",
This post 讨论 React 是 devDependency
还是 dependency
。也许会有所帮助:)
【讨论】:
以上是关于找不到模块“@storybook/react”或其相应的类型声明。在 Heroku 上的主要内容,如果未能解决你的问题,请参考以下文章
找不到@ storybook / react-native @ ^ 5.0.6的匹配版本
React,Typescript - 找不到模块...或其相应的类型声明