(с использованием угловых 1,5)Передача значения из одного дочернего элемента к другому
У меня есть родительский компонент (основной), проходящей в кучу данных к компоненту ребенка (child1).
Этот дочерний компонент (child1) отображает данные в таблице. Строки таблицы имеют ng-click, который сохраняет значение при нажатии (целое число).
вот HTML основного компонента:
<child2 sent-id = "$ctrl.sendCopy"></child2>
<child1 data = "$ctrl.stuff"></child1>
Вы можете увидеть child1 хранит массив вещи в качестве данных (который привязывается в компоненте ребенка 1)
Я хранить значение таблицы, щелкают, как это:
function Child1Controller(){
this.storeId = function(id){
this.sendCopy = id;
}
}
затем в child2 я связываю sentId как так
bindings: {
sentId: '='
},
И просто попробуйте отобразить его в html, но он не пройдет.
Я чувствую, что его действительно просто. Благодаря
EDIT (больше кода): по уходу за детьми 1 компонент
angular.module('main').component('child1', {
templateUrl: 'scripts/components/child1.html',
bindings: {
data: '<',
},
controller: Child1Controller
});
function Child1Controller($log){
this.storeId = function(id){
this.sendCopy = id;
}
}
Child1 HTML:
<div class="panel panel-default">
<div class="panel-body">
<table class="table table-hover">
<thead>
<tr>
<th>Name</th>
<th>Id</th>
</tr>
</thead>
<tbody>
<tr ng-click="$ctrl.storeId(data.id)" ng-repeat="data in $ctrl.data | filter:data.name">
<td>{{data.name}}</td>
<td>{{data.id}}</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
Child2 компонент
angular.module('main').component('child2', {
templateUrl: 'scripts/components/child2.html',
bindings: {
sentId: '='
},
controller: Child2Controller
});
function Child2Controller() {
}
Child2 HTML
<div class="panel panel-default">
<div class="panel-body">
<div>
</div>
<div>
ID = {{ $ctrl.sentId }}
</div>
</div>
</div>
вы могли бы предоставить больше контекста? – jkris
Вы можете написать больше кода для Вашего вопроса – Ajaykumar
добавлен код! – Alex