0
我是AngularJS的新手,但我必須開發一個搜索選項卡,其中打印出$http.get
JSON
。
我的邏輯是將ng-model
加上$watcher
並打印數據。
我做得對嗎?有沒有其他的建議可以做得更好?
這裏婁我粘貼代碼:
discover.js
var discover = angular.module('app.discover', ['discover.factory']);
discover.controller('getDiscover', [ '$scope', 'img', 'search', function ($scope, img, search) {
var data = this;
$scope.$watch('searchStr', function (substring) {
if (substring && substring.length > 1) {
search.getJSON(substring).then(function (response) {
data.stories = response.stories;
data.tags = response.tags;
data.users = response.users;
});
}
});
}]);
_discover.html
<div style="padding-top:50px;">
<article>
<section>
{{my.stories}}
{{my.tags}}
{{my.users}}
</section>
</article>
</div>
編輯
調查更多我誤解了我將要嘗試解釋的真正問題。
.state('discover', {
url: "/discover",
views: {
'header': { templateUrl: "app/Topbar/_topbarDiscover.html", controller: 'getDiscover', controllerAs: 'my' },
'content': { templateUrl: "app/Discover/_discover.html", controller: 'getDiscover', controllerAs: 'my' },
'footer': { templateUrl: "app/Navbar/_navbar.html", controller: 'NavbarController', controllerAs: 'my' }
}
});
這裏的主要問題是,我明白,寫作同樣controller
意味着我用了2 ui-views
相同controller
,但事實是第一controller
打電話的動作,所以它是頂欄controller: getDiscover
這有數據。
你是否從服務'getJson'方法獲得'response'中的任何東西? – Sajal
@ Dev-One以'console.log'作爲迴應我得到'object' – DevStarlight
'object'有什麼? – Sajal