带有 Ionic 2 Angular 2 和 TypeScript 的 OpenPGP

Posted

技术标签:

【中文标题】带有 Ionic 2 Angular 2 和 TypeScript 的 OpenPGP【英文标题】:OpenPGP with Ionic 2 Angular 2 and TypeScript 【发布时间】:2017-09-16 03:01:36 【问题描述】:

我正在尝试将 OpenPgp 导入使用 Angular 2 和 TypeScript 编写的 Ionic 2 应用程序。

但是,TypeScript 将类型作为模块而不是模块导入。 OpenPgp 是用 AMD 编写的,支持 ES6 模块,我尝试过的所有东西都不起作用。

除了 JS 中的加密之外,我该如何进行这项工作?

【问题讨论】:

【参考方案1】:

您可以将脚本添加为 javascript。我知道 ionic 还没有使用 angular-cli,但他们应该有办法添加脚本。对于 angular-cli 项目,您可以这样做:

将库添加到 angular-cli.json

  "scripts": [
    .....
    "../node_modules/openpgp/dist/openpgp.js"
  ],

添加一个虚拟声明以保持 TS 快乐:

 declare var openpgp: any;

【讨论】:

谢谢朱莉娅!我试了一下,但我没有 angular-cli.json,我也在 package.json 中尝试过,但没有用 :(【参考方案2】:

这条评论有答案,需要在index.html中添加openpgp库而不是https://***.com/a/41372258/1161746

<script src="assets/scripts/openpgp.min.js"></script>
<script>
  window.openpgp.initWorker( path:'/assets/scripts/openpgp.worker.min.js' );
</script>

【讨论】:

以上是关于带有 Ionic 2 Angular 2 和 TypeScript 的 OpenPGP的主要内容,如果未能解决你的问题,请参考以下文章

使用 ionic 2 和 angular 2 创建菜单

Ionic / Angular 离子项,带有按钮单击以选择隐藏选定的离子项

ionic 2 + angular 2 - 选项卡 + 侧边菜单

使用带有 Ionic 的 3rd 方 CSS

在 Angular 2、Ionic 2 中返回一个承诺值

Ionic 3 和 Angular 2 中的多个 @Input