首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >有没有一种方法可以在不发布到NPM的情况下将模板组件集成到本地框架中?

有没有一种方法可以在不发布到NPM的情况下将模板组件集成到本地框架中?
EN

Stack Overflow用户
提问于 2020-03-30 05:07:45
回答 3查看 1.2K关注 0票数 2

我目前正在测试模板js。现在,我想编写模板组件,并将它们包含在VUE/React项目中。模板的官方网站已经展示了如何将它们集成到一个框架中(

https://stenciljs.com/docs/overview

)。但他们假设您自己的模具组件库已经发布到npm。

有没有一种方法可以在本地将模板组件集成到框架中,以便在不发布组件的情况下对其进行测试?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2020-03-30 22:53:53

是的,您可以使用

npm-link

为了这个。

代码语言:javascript
运行
复制
cd my-component-lib
npm link

cd ../my-app
npm link my-component-lib # or whatever you have named the project in package.json

如果你有任何问题(例如路径解析不正确),你也可以尝试打包你的包并安装打包的版本,使用

npm-pack

代码语言:javascript
运行
复制
cd my-component-lib
npm pack

cd ../my-app
npm install ../my-component-lib/my-component-lib-1.0.0.tgz

不过,链接更可取,因为对组件库的更改将立即反映(在重新构建之后),而使用压缩,您必须在每次对库进行更改后重新打包和重新安装它。

票数 7
EN

Stack Overflow用户

发布于 2020-06-03 03:28:43

与发布或打包您的包不同,您可以利用

TypeScript的路径映射特性

..。

这允许您编写导入语句,就像编写已发布的包一样,但在幕后,TypeScript会将导入映射到其给定的源代码位置。

下面是一个将路径映射添加到编译器选项的tsconfig.json示例:

代码语言:javascript
运行
复制
{
  "compilerOptions": {
    "baseUrl": ".",
    "paths": {
      "ui-components": ["libs/ui-components"],
      "ui-components/loader": ["libs/ui-components/dist/loader/index.cjs.js"],
      "ui-components-react": ["generated/ui-components-react/src/components.ts"]
    },
    ...

如您所见,它有3个映射:核心模板组件的路径

,生成的React组件的路径被公开为

,以及生成的加载器

它提供了Custom元素和React包装器之间的桥梁。

我为模板Web组件创建了一个完整的工作示例,它具有为React生成的绑定和包装器,无需发布任何包:

Nx模板反应

..。

请注意,此答案基于

或者更低。未来的版本可能会有不同的生成框架集成的方法。

票数 5
EN

Stack Overflow用户

发布于 2021-03-01 21:29:10

对于本地集成,您可以引用

文件内

可以在Vue/React项目的head标签中使用的文件夹。

例如,如果您有以下两个应用程序

-模板组件

-示例react应用程序,它将使用组件。

一旦您通过以下方式运行模板组件

它将托管在3333 (默认情况下)。在标题中包含以下行

将在更改时将组件与实时重新加载集成在一起。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60920736

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档