javascript - Vue组件库,无需打包支持包或编译scss文件
问题描述
我的任务是弄清楚如何发布我的团队正在开发的组件库。这些组件将被公司内部的各种内部应用程序使用。我有以下限制:
- 该库将作为来自内部本地存储库的 npm 包使用。(这部分我已经想通了)
- 组件应使用包内的 typescript 接口 (*.d.ts) 引用编译为 JavaScript。
- 不应捆绑任何第三方包(包括 Vue)。相反,最好在添加组件时和之后将依赖的 npm 包添加到项目中
npm i
。 - 编译后的 css 包应包含在包中,但应在需要时在项目中单独引用。
- 构成组件样式的原始 scss 文件应包含在包中,以便在构建期间将它们捆绑到项目的现有 scss 中。
我已经研究过vue-cli-service build --target lib
要做到这一点,但似乎它捆绑并打包了所有东西。
我要问的甚至可能吗?它是反模式吗?有替代品吗?我不知道从哪里开始。
解决方案
您已经朝着正确的方向前进,vue-cli-service build --target lib
这正是您所需要的。它将您的入口.vue
文件捆绑为一个组件,然后此捆绑包成为您的入口点package.json
。它不包含 Vue 库(文档中对此进行了说明),我认为默认情况下它被配置为将 CSS 提取到文件夹中的单独文件中dist
。我希望这有帮助。
推荐阅读
- r - R-使用存储在服务器上的文件部署闪亮应用程序的问题
- spring - 配置 Spring Boot 以使用自定义访问令牌转换器
- android - 请求与我的库相同的导入的 Android 项目
- vee-validate - 如何在不同名称的 vee-validate 中显示服务器错误?
- ruby-on-rails - 如何根据条件验证密码?
- javascript - 如何访问从 MVC 视图中的 ajax 调用调用的控制器返回的数据
- android - Jetpack Compose 中的高度垫片 (HeightSpacer)
- angular - 在 Ionic 4 中使用查询参数
- python - (Maya Python) 如何通过 GUI 函数运行单选选项按钮?
- python - 如何计算 python pandas 数据帧的第一条和最后一条记录之间的时间差异