【发布时间】:2018-12-25 11:44:11
【问题描述】:
我刚刚创建了我的 Storybook 组件库(ES6 等)。 它的结构是一个 Lerna 项目(所有组件都隔离在 packages/ 文件夹中)。但是,这是一个没有真正发布功能的私人仓库,所以我认为 Lerna 不能使用私人(免费)帐户。 我已将 Storybook 存储库按原样推送到我的 Bitbucket。
现在,我想从主应用程序中使用我的故事书组件库,这是基于 Next.js 构建的不同存储库(在 Bitbucket 上)。
我试图按如下方式导入各个故事书组件
import MyComponent from 'storybook-repo/packages/my-component/my-component';
但它显然不起作用,返回此错误:
Module parse failed: Unexpected token (8:9)
You may need an appropriate loader to handle this file type.
这是因为 MyComponent 是一个 jsx 文件。
我希望 Next.js 能够转译导入的模块,但事实并非如此。
我的问题是:
我的直觉说从
package.json导入整个故事书为git+ssh://git@bitbucket.org/myusername/storybook-repo.git不是一个好主意。有更好的解决方案吗?Lerna 是否仅适用于我可以发布我的包的公共/专业存储库?
为什么 Next.js 不转译导入的 jsx 模块?在这一点上,这个过程是如何工作的?我应该从远程存储库中转译故事书组件还是从我的主应用程序中完成这项工作?
谢谢
【问题讨论】:
-
您找到解决方案了吗?我遇到了同样的问题 - Storybook 被其他包中未编译的故事所窒息。
-
您找到解决方案了吗?
标签: reactjs next.js storybook lerna monorepo