Редактировать: Поскольку большинство комментариев до сих пор дают мне решение TypeScript, я чувствую, что мне нужно повторить здесь: Использование JavaScript ES5.Доступ к элементу в компоненте Angular2 JavaScript ES5
Я хочу создать компонент холста, где я рисую данные на основе связанного свойства. Как я могу сделать это в Angular2 с помощью JavaScript?
Мой подход с угловым 1 заключается в том, чтобы получить ссылку на элемент в директиве, но я не могу понять, как это должно быть сделано сейчас.
Вот подход, который, кажется, работает, но я чувствую, как мыть руки после того, как это сделать:
(function (app) {
app.DrawingComponent = ng.core
.Component({
selector: 'my-drawing',
template: '<div><canvas id="{{randomId}}"></canvas></div>'
})
.Class({
constructor: function() {
this.randomId = "canvas" + Math.random();
},
ngAfterViewInit: function() {
var canvas = document.getElementById(this.randomId);
console.log(canvas);
}
});
})(window.app || (window.app = {}));
Возможный дубликат [Доступ к локальной переменной из шаблона в контроллере в Angular2] (http://stackoverflow.com/questions/34517969/access-a-local-variable-from-the-template-in-the -controller-in-angular2) –
Спасибо, но это, кажется, дает решение TypeScript? Теги и название состояния JavaScript (ES5) – Arve
Хорошо, я напишу это как ответ. –