私はバックエンドAPIに接続するためにVueリソースを使用しています。私は、新しいリソース項目の作成と既存のリソース項目の変更の両方に使用するフォームコンポーネントを持っています。フォームは正常に動作しますが、フォームを保存するときは、api呼び出しに適切なhttpメソッドを使用する必要があります。新しいアイテムを作成する場合はPOST
メソッドを使用し、既存のアイテムを更新する場合はPUT
メソッドを使用する必要があります。基本的に、私はその後、成功は/約束を失敗し、両方同じを使用し、update
またはsave
リソース機能を使用するかどうかをチェックするためにif
ステートメントを使用する必要がVueリソース(挿入と更新に同じフォームを使用)
if(this.itemId > 0) { // Update existing item
myresource.update({id: this.itemId}, this.item).then(response => {
//...
}, response => {
//...
});
}
else { // Post new item
myresource.save({}, this.item).then(response => {
//...
}, response => {
//...
});
}
:今のところ、この方法の保存私のフォームは次のようになりますコード。/
var method = this.itemId ? 'PUT' : 'POST';
myresource.request(method, {id: this.itemId}, this.item).then(response => {
//...
}, response => {
//...
});
上記のコードは明らかに動作しませんが、if
ステートメントを使用して、私の成功を繰り返すことなく、これを達成するために同様の方法があります:このようなもので、上記二つの方法を組み合わせるためのいくつかの方法があります要求タイプごとに約束を破る?
これが見えます。ありがとう! – matt