2016-09-13 4 views
4

Я строю Ионный проект, используя Ionic 2, Angular 2 и TypeScript, чтобы немного проверить структуру. Мне нужно включить внешнюю библиотеку (ntc.js) в мой проект, так как мне нужно, чтобы она называла шестнадцатеричные цвета.Как включить внешнюю библиотеку Javascript в проект IScript 2 TypeScript?

Я знаю, включая библиотеку Javascript для TypeScript, которая должна работать, поскольку все, что работает в JS, работает в TS. Я просто не хочу включать его в неправильный путь.

Я попытался добавить библиотеку в www/build/js, но, похоже, это не работает, и это не похоже на хороший способ сделать это. Я попытался найти способы сделать это, но ничего не нашел (может быть, потому, что Angular 2 и Ionic 2 все еще свежи).

вещи, как:

import * as ntc from '../../js/ntc'; 

, кажется, не работает, как хорошо, даже если моя библиотека находится в нужном месте. TypeScript, похоже, не читает мой файл должным образом, если он читает его вообще.

Каков хороший способ сделать это? Где я должен поместить мой .js-файл в каталог проекта?

ответ

8

Вы импортируете его, добавив его в свой index.html, как и любой другой обычный файл javascript.

Тогда в ваших TS файл, который вы делаете:

declare var Tree:any; 

Тогда в вашем коде, вы можете использовать переменную Tree, хотя она существует в файле Javascript. эта строка кода в основном говорит компилятору машинописного текста, есть переменная из дерева, которую она должна игнорировать.

+0

Хорошо, но где я могу добавить файл .js? Кроме того, не переписывается index.html с каждой сборкой? –

+2

Я нашел его! Вы должны добавить его в www/рядом с index.html и добавить включить его после других .js-файлов в index.html, например ''. Большое спасибо :) –

+0

Добро пожаловать, удачи! –

0

Помимо выполнения объявления var, в котором указано, что переменная существует, вы можете использовать машинописные машинописи. Написав

typings install libraryname 

В вашей консоли вы получите файл, который уже имеет объявить уаг/класс, и вы можете увидеть все свои функции/свойства при импорте его.

import {lib} from 'libraryname'; 
+0

I попытался найти ntc.js в типизациях, но я не думаю, что у типизов есть эта библиотека. –

Смежные вопросы