【问题标题】:Angular 5 proper way to customize node_module .js FileAngular 5 自定义 node_module .js 文件的正确方法
【发布时间】:2018-11-01 08:32:43
【问题描述】:

我搜索过 Google 和 Stackoverflow。我觉得我的问题很常见,所以也许我没有使用正确的搜索词。

在我的 Angular 5 项目中,我通过运行 npm i --save pdfmake 添加了 pdfmake。这已将预期的 .js 文件添加到 /node_modules/pdfmake/dist。其中一个文件名为 vfs_fonts.js,我已按照 pdfmake 网站上的说明对其进行了更新,以便添加自己的字体。

所以,作为 Angular 5 和 node 的新手,我的问题是:我是否应该简单地覆盖 /node_modules/pdfmake/dist 中存在的 vfs_fonts.js 文件?这对我来说似乎是错误的,因为如果我将我的项目安装在另一台机器上,npm install 将无法获得我的自定义。

在我的 node_modules 中覆盖这个 .js 文件的正确方法是什么?我是否需要从我的 node_modules 中提取 pdfmake 来创建一个包含在我的 .angula-cli.js 中的自定义包?我犹豫要不要这样做,因为我不想失去 npm 的所有好处。

谢谢!

【问题讨论】:

    标签: angular npm node-modules


    【解决方案1】:

    如果您在 node_modules 中编辑代码,但无论何时执行 npm install,它都会恢复到旧的更改。

    最好的选择是您可以fork 包存储库。您可以使用 NPM 直接从 GitHub 安装项目,这种方法可以让您将未来的更改从原始源集成到您的自定义版本中。

    然后你可以使用这个:

    npm install https://github.com/<username>/<repository>/master
    

    希望这能解决您的问题。

    【讨论】:

    • 在我的特殊情况下,我能够解决这个问题,因为我可以告诉 pdfmake 从我项目的另一个位置使用我自己的 vfs-fonts.js (pdfMake.vfs = my_vfs)。我正在检查这个答案是否正确,因为我最终将此解决方案用于我也在我的应用程序中自定义的另一个项目。
    猜你喜欢
    • 2021-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-15
    • 2017-11-14
    • 1970-01-01
    • 2014-02-14
    • 2011-01-19
    相关资源
    最近更新 更多