在angular 2项目中导入crypto js(使用angular cli创建)
我正在尝试在angular2项目中导入crypto js 我也回答了几个SO问题,但最后还是出现了一个错误,找不到模块“crypto js” 我尝试的是:在angular 2项目中导入crypto js(使用angular cli创建),angular,cryptojs,Angular,Cryptojs,我正在尝试在angular2项目中导入crypto js 我也回答了几个SO问题,但最后还是出现了一个错误,找不到模块“crypto js” 我尝试的是: npm安装crypto js——保存 及 typings安装dt~crypto js--global--save 然后我修改了文件angularcli build.js var Angular2App = require('angular-cli/lib/broccoli/angular2-app'); module.exports = f
npm安装crypto js——保存
及
typings安装dt~crypto js--global--save
然后我修改了文件angularcli build.js
var Angular2App = require('angular-cli/lib/broccoli/angular2-app');
module.exports = function(defaults) {
return new Angular2App(defaults, {
vendorNpmFiles: [
'systemjs/dist/system-polyfills.js',
'systemjs/dist/system.src.js',
'zone.js/dist/**/*.+(js|js.map)',
'es6-shim/es6-shim.js',
'reflect-metadata/**/*.+(ts|js|js.map)',
'rxjs/**/*.+(js|js.map)',
'@angular/**/*.+(js|js.map)',
'crypto-js/**/*.+(js|js.map)'
]
});
};
const map: any = {
'crypto-js': 'vendor/crypto-js'
};
/** User packages configuration. */
const packages: any = {
'crypto-js': {
format: 'cjs'
}
};
文件src/system config.ts
var Angular2App = require('angular-cli/lib/broccoli/angular2-app');
module.exports = function(defaults) {
return new Angular2App(defaults, {
vendorNpmFiles: [
'systemjs/dist/system-polyfills.js',
'systemjs/dist/system.src.js',
'zone.js/dist/**/*.+(js|js.map)',
'es6-shim/es6-shim.js',
'reflect-metadata/**/*.+(ts|js|js.map)',
'rxjs/**/*.+(js|js.map)',
'@angular/**/*.+(js|js.map)',
'crypto-js/**/*.+(js|js.map)'
]
});
};
const map: any = {
'crypto-js': 'vendor/crypto-js'
};
/** User packages configuration. */
const packages: any = {
'crypto-js': {
format: 'cjs'
}
};
使用后
import*作为来自“crypto js”的CryptoJS代码>
我仍然有我的错误。我错过什么了吗
谢谢好的,我知道了。我只需在typings/crypto js/中下载该文件,然后在导入CryptoJS之前添加行//
。这可能会帮助您:
然后:
或
您可以尝试以下解决方案:
1. npm install --save @types/crypto-js
2. import { AES } from "crypto-js";
3. AES.encrypt('my message', 'secret key');
将其添加到您的Package.JSON
文件中
"browser": {
"crypto": false
}
这样做会在您运行ng service
时告知您的应用程序不要将加密库绑定到浏览器 在安装cryto js&@types/crypto js之后,在angular-cli.json文件中添加脚本路径
"scripts": [
"../node_modules/crypto-js/crypto-js.js"
]
那个链接不起作用。。。我使用并添加了:node_modules/crypto-js中的文件,然后在我的类上导入了:import*作为来自“../../../node_modules/crypto-js”的CryptoJS,我使用了SHA3,我发现:import{SHA3}来自“crypto-js”
使dist.js比'crypto js/SHA3'中的import*作为SHA3有点胖代码>。大约100KB。我不知道为什么。检查这个例子
"scripts": [
"../node_modules/crypto-js/crypto-js.js"
]