【问题标题】:What's the Proper Way of Publishing an NPM Package with Kendo UI as Its Dependency?以 Kendo UI 作为其依赖项发布 NPM 包的正确方法是什么?
【发布时间】:2020-02-07 05:34:23
【问题描述】:

我创建了一个 Angular 库以作为 NPM 包发布,并且我已经让它工作了。但是,当我尝试在库中为我的组件使用 Kendo UI Button 时,我可以发布到 NPM,但它不是很有用。在另一个 Angular 应用程序中安装 NPM 包后,它不起作用,我不得不使用以下命令手动安装 Kendo UI Button:

ng 添加@progress/kendo-angular-buttons

之后,我也尝试在我的库项目中使用该命令,它在我的库文件夹中添加了一个 node_modules 文件夹。除此之外,它还为我的图书馆更新了package.json。再次发布并在我的其他应用中重新安装后,它现在可以工作了!

但是,我的库文件夹中有一个多余的node_modules,我不想要这个。我可以跳过在我的库文件夹中使用 ng add 并仅复制运行该命令时添加的依赖项吗?

【问题讨论】:

    标签: angular angular8 kendo-ui-angular2


    【解决方案1】:

    我忘记在 styles 数组中添加 Kendo UI 样式。

    1. 生成库
    2. ng add @progress/kendo-angular-buttons
    3. 将 Kendo UI Button 导入添加到库模块
    4. 编辑库 package.jsonng-package.json 以添加 Kendo UI 依赖项
      • dependencieswhitelistedNonPeerDependencies
    5. ng build library
    6. 进入dist/lib,发布到 NPM
      • 使用npm initnpm loginnpm publish
    7. npm install library 在另一个 Angular 应用中
    8. 将 Kendo CSS 添加到 styles 数组中的 angular.json
    "styles": [
      {
        "input": "node_modules/@progress/kendo-theme-default/dist/all.css"
      },
      "src/styles.css"
    ]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-12-15
      • 2022-11-25
      • 2022-11-15
      • 1970-01-01
      • 1970-01-01
      • 2016-12-18
      • 2019-09-23
      • 1970-01-01
      相关资源
      最近更新 更多