Vue组件库,无需打包支持包或编译scss文件

时间:2020-06-17 00:32:45

标签: javascript typescript vue.js npm vue-component

我的任务是弄清楚如何发布团队正在研究的组件库。这些组件将由公司内部的各种内部应用程序使用。我有以下限制条件:

  • 该库将从内部本地作为npm包使用 资料库。 (我已经知道了这一部分)
  • 组件应为 使用typescript接口(* .d.ts)引用编译为JavaScript 在包装中。
  • 不应使用任何第三方软件包(包括Vue) 捆绑在一起。相反,最好有依赖的npm 在添加组件时以及npm i之后添加到项目的软件包。
  • 已编译的css捆绑包应包含在软件包中,但 在需要时应在项目中单独引用。
  • 组成组件样式的原始scss文件应为 包含在软件包中,因此可以将它们捆绑到项目的 构建过程中现有的scss。

我已经研究过vue-cli-service build --target lib来完成此任务,但似乎它把所有东西捆在一起打包了。

我要问的甚至可能吗?是反模式吗?有其他选择吗?我不知道从哪里开始。

1 个答案:

答案 0 :(得分:0)

使用vue-cli-service build --target lib朝着正确的方向前进,这正是您所需要的。它将您的条目.vue文件作为一个组件捆绑在一起,然后该捆绑包成为您package.json的入口点。它不包含Vue库(在文档中有说明),我认为默认情况下,它在dist文件夹中的单独文件中配置为extract the CSS。 希望对您有所帮助。