$ resource.queryを使用してバックエンドからデータを取得しています。それは働いている。しかし、私は応答を得た後、ビューは変更されません。関数内にないときに機能します。
この
が、これは私のコントローラapp.controller('myController', ['$scope', '$resource', 'myService',
function ($scope, $resource, myService) {
//this call update the view
myService.fetchData('1234', '111111')
.then(function (data) {
$scope.data = data
})
.catch(function (erro) {
console.log(erro);
});
//this is called in a button click and doesn't change the view
$scope.getData = function() {
myService.fetchData('1234', '111111')
.then(function (data) {
$scope.data = data
})
.catch(function (erro) {
console.log(erro);
});
}
}]);
である私のサービス
app.factory('myService', function ($q, $resource, $http) {
var service = {};
service .pesquisar = function (param1, param2) {
return $q(function (resolve, reject) {
$resource(urlWebService + '/API/', null).query({
param1: param1,
param2: param2
}, function (dados) {
resolve(dados);
}, function (erro) {
reject(erro);
});
});
};
return service ;
});
であり、これは、あなたが追加しているgetData
()が呼び出されると仮定すると、私の見解
<table>
<thead>
<tr>
<th>Field</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="d in data">
<td>{{d.field}}</td>
</tr>
</tbody>
</table>
に
またはあなたのコントローラに変更する迅速な返信いただきありがとうございます。私はあなたが言ったことをやっても、まだ動作しません..私はこれがとても難しいとは思わない、私はおそらく何かが不足していると思う... – JonathanMRibeiro
全体のコードを追加しようとすると、 getData() – Karim
私はui-routerを入れ子にしたビューで使用しています.ng-clickでボタンを取得してgetData()を呼び出し、別のビューでng-repeatを呼び出します。私はネストされたビューが同じコントローラを共有していると思ったが、同じビューにボタンを置いた後、私は気づいていない...問題は解決した。 – JonathanMRibeiro