В последнее время я начал немного играть с угловыми элементами, выпущенными в Angular V6, для этого я открыл небольшой проект песочницы.https://github.com/Slash7GNR/ndv-angular-elements Теперь я попытался добавить более сложный ввод в мой веб-компонент - я попытался добавить массив ввода следующим образом: в app.component.ts я добавил:
@Input() welcomeMessages: string[];
и в шаблоне, который я добавил:
<div *ngFor="let message of welcomeMessages; let index = index">
{{index}} - {{message}}
</div>
Затем я создал статический html-файл и добавил следующий код: (pls-wrk - это веб-компонент, созданный угловыми элементамиfeature)
<pls-wrk></pls-wrk>
<script>
let arr = [“wow”,”wow2"];
let elementByTag = document.getElementsByTagName(‘pls-wrk’)[0];
elementByTag.setAttribute(“welcome-messages”, arr);
</script>
<script src="ndv-elements.js"></script>
Я получаю следующую ошибку:
Uncaught Error: Невозможно найти другой поддерживающий объект 'wow, wow2' типа 'string'.NgFor поддерживает только привязку к итерируемым объектам, таким как массивы.
Я также пытался связать массив через сам элемент следующим образом:
<pls-wrk welcome-messages=”[‘wow’,wow2']”></pls-wrk>
Но ни это не сработало.
Я также пытался связать ввод, который является объектом, но я не смог увидеть результат в html.
Любой здесь, кто мог бы успешно передать массив / объекткак вход в угловой элемент?