我正在使用 cryptojs 库来加密密码文本并将数据发送到服务器。 但是我收到以下错误消息,
Error TS2304: Cannot find name 'CryptoJS'.
我通过以下方式安装了库:sudo npm install crypto-js
import 'crypto-js/crypto-js';
@Page({
templateUrl: 'build/pages/login/login.html'
})
export class LoginPage {
constructor(private nav: NavController, public http: Http) {
}
validateUser(fieldval, data){
let params = "{'ignoreAuthModule': 'ignoreAuthModule'}";
let headers = new Headers();
headers.append('Content-Type', 'application/x-www-form-urlencoded');
headers.append('Parameter', params);
let url = 'app/authentication';
let encrypted_password = Cryptojs.AES.encrypt(fieldval.password, CryptoJS.enc.Base64.parse(data.seed),{mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7 }).toString().replace(/\+/g, "-").replace(/\//g, '_');
let requestoptions = new RequestOptions({
method: RequestMethod.Post,
url: url,
headers: this.headers,
body: JSON.stringify(data)
})
let body = JSON.stringify(params);
this.http.post(url, body, headers)
.subscribe(
response => {
},
error => {
console.log(error.text());
}
);
}
logError(err) {
console.error('There was an error: ' + err);
}
}
最佳答案
我不知道这个编译错误发生在哪里,但你应该安装 crypto-js 库的类型:
typings install --ambient crypto-js
有关详细信息,请参阅此问题:
关于angular - 使用angular2中的cryptojs库加密文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37296592/