当dbServerTable模板中的列表项被单击但dbServerInfoSidebar中没有显示数据时,我希望组件dbServerTable将数据提供给dbServerInfoSidebar。组件通过一个控制器向另一个组件提供数据
(function(angular) {
'use strict';
angular.module('SplashDamageApp').component('dbServerTable', {
templateUrl: 'dbServerTable.html',
controller: 'AppCtrl',
});
})(window.angular);
(function(angular) {
'use strict';
angular.module('SplashDamageApp').component('dbServerInfoSidebar', {
templateUrl: 'dbServerInfoSidebar.html',
controller: 'AppCtrl',
});
})(window.angular);
它们都共享相同的控制器。
//AppCtrl
$scope.selectServer = function(item)
{
$scope.selectedItem = item;
}
// dbServerTable.html
<tr data-ng-repeat="item in items | filter:search | orderBy:'name'" data-ng-click="selectServer(item)">
<td>{{item.display_name}}</td>
</tr>
//dbServerInfoSidebar.html
<h1>{{selectedItem}}</h1>
当我点击列表项,selectServer()抓住项目,这是这样,它应该把它传递给dbServerInfoSidebar.html,但事实并非如此。
有人可以告诉我如何使这个数据连接?代码示例欢迎:)
感谢您的响应。有没有什么办法可以快速编写你所描述的代码? –
我添加了一个简短的例子,我希望它会有所帮助。 – yadejo
这为我修好了。谢谢! –