如何在Bit的React组件库中使用utils.js共享工具模块?
解决Bit构建非JSX工具模块的问题
方案1:把工具模块做成独立Bit组件
Bit并非只能处理React组件,完全可以单独发布纯工具函数模块:
- 新建独立目录存放工具代码(比如
utils/date-handlers、utils/text-formatter) - 执行
bit add ./utils/date-handlers --id utils/date-handlers将目录添加为Bit组件 - 在工作区配置文件(
workspace.jsonc或bit.json)中,给这类工具组件指定通用TS/JS构建器(比如@teambit/typescript.typescript,不要使用React专属构建器) - 运行
bit build utils/date-handlers完成构建后,你的React组件就能直接导入这个工具组件使用
方案2:调整React组件的配置,允许包含JS文件
如果一定要把工具代码放在React组件目录下,修改组件配置即可:
- 找到对应React组件的
component.json配置文件 - 修改
files字段,明确包含.js文件:{ "files": [ "src/**/*.jsx", "src/**/*.js" ] } - 同时确认组件使用的构建器支持处理JS文件,比如换成通用的TS构建器,而非仅识别JSX的构建器
方案3:自定义Bit环境适配工具模块
可以创建一个专门用于工具类组件的环境,或者修改现有React环境:
- 在环境的构建配置中添加对
.js文件的处理规则 - 工具组件关联这个自定义环境,React组件继续使用React环境,两者可正常互相依赖
内容的提问来源于stack exchange,提问作者Tim Anderson
相关产品推荐
相关产品推荐

