将节点模块导入 angular typescript / angularcli 的正确方法是什么

what is the right way to import a node module to angular typescript / angularcli

我正在将一些 "legacy"(非打字稿)js 库导入我的 angular SPA。

通常我只是从 cdn 添加一个负载到 index.html 比如:

<script src="//cdnjs.cloudflare.com/ajax/libs/pako/1.0.6/pako.min.js"></script>

并且在 angular-component 中我只是 decale

declare var pako: any;

这通常有效。现在我喜欢在本地 "host" 这个库。我可以使用

将它添加到 angular 项目中
npm install pako

但是我如何将它添加到 angular 应用程序?
我测试了向 polyfills.ts 添加导入(这适用于 hammerjs 但不适用于 pako)

这也适用于 ng 构建(并且可能被添加到编译/打包的 runtime.js

顺便说一句:这是一个测试 stackblitz https://stackblitz.com/edit/ng-load-pako

我喜欢所有提供 stackblitz link 的问题,这样我就可以轻松提供正确答案:

https://stackblitz.com/edit/ng-load-pako-gfunsb

基本上,您只需要做:

import * as pako from 'pako';