コンポーネントのライフサイクル フック、特に$onInit()
. 私は Todd Mottos Course と協力しており、そこで彼はコンポーネントを構築していますが、これは私の意見では 1.6 では動作しないはずですが、それでも動作します:
var repos = {
template: `
<div class="repos">
My Repos:
<ul>
<li ng-repeat="repo in $ctrl.list">
<a href="{{ repo.html_url }}">
{{ repo.name }}
</a>
({{ repo.stargazers_count }} stars)
</li>
</ul>
</div>
`,
controller: function (ReposService) {
var ctrl = this;
ctrl.list = [];
ReposService.getRepos().then(function (response) {
console.log(ctrl.list);
ctrl.list = response;
});
}
};
angular
.module('repos')
.component('repos', repos)
.config(function ($stateProvider) {
$stateProvider
.state('repos', {
url: '/repos',
component: 'repos'
});
});
わからない、なぜ
controller: function (ReposService) {
var ctrl = this;
ctrl.list = [];
ReposService.getRepos().then(function (response) {
ctrl.list = response;
});
}
まだ動作しますが、「ctrl.list」は $onInit 内で初期化する必要があると思いました。そうしないと、まだ未定義ですか?