0

Я использую машинопись & Угловая 2. У меня есть EncryptionService:Как я могу импортировать javascript-файл из моего файла машинописного текста?

import {Injectable} from 'angular2/core'; 
    import './lib/hmac256-enc64'; 

    @Injectable() 
    export class EncryptionService { 
    constructor() { 
    } 
    hmacSha256(message: string, secret: string) { 
     return CryptoJS.HmacSHA256(message, secret).toString(CryptoJS.enc.Base64); 
    } 
    } 

Я хочу, чтобы включить»./lib/hmac256-enc64' ; (CryptoJS) Но во время выполнения я получаю ошибку:

обнаружен как регистр, но не выполнен.

Как я могу добавить Js-файл в качестве зависимости в моем EncryptionService?

+0

Этого сообщения получило это работает для меня. Зарегистрировать его на карте system.js. – Baconbeastnz

ответ

1

Вы должны использовать typings для загрузки определений типа CryptoJS:

$ typings install cryptojs --ambient --save 

Затем добавьте ссылку на определения типа и импортных CryptoJS:

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

import * as CryptoJS from "cryptojs" 

Если импорт не работает использовать старый внешние модули:

import CryptoJS = require('cryptojs'); 

Затем вы можете использовать CryptoJS.HmacSHA256

Пожалуйста, обратите внимание, что я никогда не использовал CryptoJS с машинописью, так что я не могу быть уверен на 100% об этом рабочем ...

+0

Спасибо за попытку .. не работает. – Baconbeastnz