, поэтому я вложил компоненты в EmberJS и не могу правильно обработать их действия.
У меня есть маршрут Create
и в его шаблоне Компонент pixel-grid
:
<div class="row">
<div class="col-sm-7">
{{pixel-grid}}
</div>
<div class="col-sm-5">
</div>
</div>
В pixel-grid
шаблоне у меня есть компонент с именем pixel-cell
:
<table class="mx-auto">
{{#each (range 0 panelWidth) as |row|}}
<tr class="table-row">
{{#each (range 0 panelHeight) as |cell|}}
<th class="table-cell">
{{pixel-cell onClick=(action 'changeColor')}}
</th>
{{/each}}
</tr>
{{/each}}
</table>
Компонент pixel-cell
имеет пустой шаблон, так как он мне пока не нужен. В pixel-cell
файле компонента js у меня есть:
import Component from '@ember/component';
export default Component.extend({
classNames: ['cell', 'clickable'],
tagName: 'div',
init() {
this._super(...arguments);
},
});
Этот код явно не компилируется, так как я не выполнял это действие.
Но ..
Я пытался установить действие в pixel-cell
, но затем Эмбер сказала мне, что pixel-grid
должно иметь это действие.
Поэтому я поместил это changeColor
действие в pixel-grid
->, которое не работает.
Итак, я попытался обработать что-то вроде этого в pixel-cell
js:
click() {
this.sendAction('changeColor');
},
-> это не работает.
Понятия не имею, как это должно работать; / Я пытался читать руководства, но все равно не справился. Пожалуйста, помогите.