laravel 5.1
にはangularJs
を使用しています。HTTPリクエストに複数のブラウザの問題があります
ボタンをクリックすると、destroy request
を送信してデータベースから削除し、完了したらget request
を送信して新しいデータを取得し、削除されました。
ボタンのng-clickイベントにメソッドをアタッチしました。これは動作し、メソッドにヒットします。
次に、.destroy request
を実行します。その.then()
のメソッドの中で.destroy
私は.get request
を持つ別のメソッドを呼び出したいと思います。
これはSafariでは完全に機能しますが、ChromeやFirefoxでは機能しません。
Here is my code for the controller
、ボタンの上に呼び出されるメソッドは、削除するためにクリックしdeleteOpportunity()
です:
$scope.getOpportunities = function()
{
UBOService.get()
.then(function successCallback(responsed) {
$scope.opportunities = responsed.data;
}, function errorCallback(response) {
$scope.error = response;
});
}
$scope.deleteOpportunity = function()
{
UBOService.destroy($scope.activeItem.id)
.then(function successCallback(response) {
$scope.getOpportunities();
return false;
}, function errorCallback(response) {
$scope.error = response;
});
}
マイサービスコード:
app.service('UBOService', function($http) {
return {
get : function() {
return $http.get('/api/user-booked-opportunities');
},
destroy : function(id) {
return $http.delete('/api/user-booked-opportunities/' + id);
}
}
})
私が何か間違ったことをやっていますか?私が紛失しているものはありますか? Safariはこのコードとどのように異なったやり方で動作しますか?
例外はコンソールに書き込まれますか?もしそうでなければ、$ http.getを呼び出すことさえありますか? – cDecker32
こんにちは!私はちょうどL5.1とAngularJS 1.47でプロジェクトを終えました。 "、function()"の代わりに "then"ブロックの後に.finally()を使用することをお勧めしますか?また、私はあなたが何かを削除した後にhttp呼び出しをしないことを提案したいと思いますが、あなたのデータを格納する変数からそれらのオブジェクトを削除します。さらに詳しい説明が必要な場合は、私はあなたに別のコメントでより多くの情報とコード例を与えることができます。 :) – Cowwando
Safariで動作しないのは何ですか?削除要求ですか?または取得要求?またはボタン自体をクリックしますか?また、あなたのlaravelの部分で使用しているコントローラのタイプは?コンソールにエラーがありますか? –