2014-11-15 4 views
3

모두 제목에 있습니다. AngularJS 응용 프로그램에서 CrytoJS 라이브러리를 사용하려고하는데이 문제를 해결할 수 없습니다.CryptoJS를 각도로 사용하는 방법

bower install cryptojslib 

그럼 내가 필요로하는 LIB로드 :

나는 정자와 crytoJS를 설치

<script type="text/javascript" src="/public/system/lib/cryptojslib/rollups/md5.js"></script> 
<script type="text/javascript" src="/public/system/lib/cryptojslib/components/enc-base64-min.js"></script> 

을 그리고 그 같은 CryptoJS를 사용하려고 :

var pwd = CryptoJS.MD5(params.email+'|'+params.password).toString(CryptoJS.enc.Base64); 

언제 이 코드를 실행하면 다음 오류가 발생합니다.

'CryptoJS is not defined' 

나는 모듈에 CryptoJS를 포장 할 수 있어야 읽었습니다하지만 내가하는 방법을 모르겠어요.

도움을 주시면 감사하겠습니다.

JM.

+0

당신이 후 각도 코드 전에 HTML에서 libaries를 포함되거나 유효했다? – yerforkferchips

+0

주문이 중요합니까? 나는 Mike의 plunker와 다른 주문을 시도한다. 그리고 그것은 아무것도 바뀌지 않는다. – jmcollin92

답변

3

AngularJS 및 CryptoJS에 문제가 있어서는 안됩니다. 컨트롤러에 해시가 생성 된 빠른 Plunker를 설치했습니다. 오류없는 ... 컨트롤러에서

http://plnkr.co/edit/kzrr3EdHNXELVof6DVSp?p=preview

다음 HTML에서

$scope.hash = CryptoJS.MD5("Message"); 

:

<script src="http://crypto-js.googlecode.com/svn/tags/3.1.2/build/rollups/md5.js"></script> 

당신이하려고하는 것보다이 다른가요?

+0

Plunker에 감사드립니다. 나는 내 코드와 아무런 차이가 없다. 그래서 안경을 바꿔 모든 사슬을 확인해 보겠습니다. – jmcollin92

+0

OK 알아 두었습니다 ... JSLint 메시지 일 뿐이지 만 올바르게 호출하면 코드가 작동합니다. JSLint 오류 메시지를 피하기 위해 모듈로 래핑하는 것이 가능한지 알고 있습니까? – jmcollin92

+0

답변이 최신 상태로 유지되면 좋을 것입니다. 업데이트 된 작업 예제를 확인하십시오. http://plnkr.co/edit/QoGj4xzqBtTKOdb1zYCy?p=preview – Eugene

0

에는 rollups 폴더의 jsfile이 포함됩니다.

심지어 'CryptoJS가 정의되지 않았습니다.'라는 동일한 오류가 발생했습니다. 이 변경 한 후, CryptoJS 객체는

var hashObj = CryptoJS.SHA512(myString); 
var hashString = hash.toString(CryptoJS.enc.HEX); 
관련 문제