2017-08-07 74 views
0

我正在尝试将我的角度2应用程序与crypto-js集成。crypto js:全局模块导出可能只出现在顶级角度打字

全局模块导出只能出现在顶级角度类型中。

我已阅读以下内容 link 1

In webpack how do I fix 'import declarations may only appear at top level of a module'?

,但我不能够实现解决方案如下

是我遵循的步骤。

1)安装的加密JS使用型 - > NPM安装--save @类型/加密JS

2)然后,在我的服务加入参考。以下是服务文件

/// <reference path="../../../typings/index.d.ts" /> 

import { Injectable } from '@angular/core'; 
import { LocalStorageService } from 'angular-2-local-storage'; 

import * as CryptoJS from 'crypto-js'; 

@Injectable() 
export class AppLocalStorageService { 

    constructor(public localStorageService: LocalStorageService) { } 

    public setItem(key:any,value:any) { 

     var enc = CryptoJS.MD5(key); 
     console.log(enc); 

    } 

    public getItem(key:any) { 
     return key; 


    } 

} 

仍然收到错误。还有什么我该怎么办?

感谢

+0

任何人都可以引导我正确的方式来整合crypto-js与角4吗? –

+0

你有没有得到任何解决方案?我也面临同样的情况。 – Linson

回答

1

对于我的情况下它是离子型器件的应用,我在使用分型面临着同样的问题。经过一番研究后,我发现,最好使用@type而不是typings。所以我用下面NPM包

https://www.npmjs.com/package/@types/crypto-js

之后我导入的模块,如下

进口*作为CryptoJS从“加密JS”;

希望它能为你工作。

享受你的编码:)

相关问题