Я пытаюсь правильно включить сторонний модуль в TypeScript и Angular 2 с помощью SystemJS. В этом случае сторонняя библиотека, по-видимому, является amCharts, но предположительно это может быть любая библиотека.Включить поток включения TypeScript
Вот что я сейчас делаю (и это работает):
- Установите библиотеку с НПМ
- загрузить его в моей
index.html
расположение:
index.html:
<script src="node_modules/amcharts3/amcharts/amcharts.js"></script>
<script src="node_modules/amcharts3/amcharts/serial.js"></script>
- Тогда я просто использовать его в моем компоненте:
Компонент:
export class GraphComponent {
ngOnInit() {
AmCharts.makeChart(...); // draw chart
}
}
Это работает и мой график делает хорошо, но мой машинопись компилятор (в Atom) жалуется, что «[с] ANNOT найти имя„AmCharts“ "в моем файле компонента. Это имеет смысл, поскольку я никогда не объявлял его в этом файле. Включение двух сценариев просто делает имя глобально доступным.
Что-то заставляет меня думать, что я действительно должен делать это
- Каким-то образом использовать SystemJS таким образом, чтобы не включать вручную скрипты в моих
index.html
- Используйте машинописные
import
заявления, чтобы загрузить библиотеку вместо зависимости по глобальной переменной
Может ли кто-нибудь указать мне правильное направление?
Что вопрос? Вы уже знаете, что вам нужно делать, просто сделайте это. –
@BryanChen Как я уже сказал, это работает, но я не думаю, что это лучший способ. Я перечисляю два момента, которые я не знаю, как реализовать, что я думаю, сделает это лучше. – weltschmerz