【发布时间】:2017-09-17 00:09:09
【问题描述】:
我是 Angular JS 的新手,在我理解它们的大部分时间里我都在搞乱组件,但是我无法让我的组件从控制器访问任何变量,我知道组件的范围始终是孤立的,但我发誓我之前能够通过组件从控制器访问变量。这是代码
<div ng-app="ticket" ng-controller="list">
<list tickets="list.tickets"> </list>
</div>
var app = angular.module('ticket', []);
app.controller('list',function($scope){
this.tickets = []; // populate on component function.
})
.component('list', {
bindings: {
tickets: '=',
client_id:'<'
},
controller: function () {
function pullTickets(){
console.log(this.$tickets);
}
this.pullTickets = pullTickets;
},
template:[
'<div class="main_list_container" ng-init="$ctrl.pullTickets()">',
'</div>'
].join('')
});
document.addEventListener('DOMContentLoaded', function () {
angular.bootstrap(document, ['ticket']);
});
组件模板初始化时会调用 pulltickets 函数,但该函数一直说控制器中的 this.tickets 数组未定义,即使我通过 ticket="list.tickets" 将该 var 包含在 html 中也是如此。我究竟做错了什么?
【问题讨论】:
标签: javascript html angularjs