フォームからデータを投稿するvueコンポーネントがありますが、正常に動作していますが、フォームを送信した後に 'selected' propを空の値にリセットする必要があります、 どうやってやるの?Vuejsで元の値に戻す方法
私はそれが本来の空の値ですが、私はエラーを取得するために選択された小道具をリセットする必要がexport default {
props: ['product', 'selected'],
data() {
return {
id: this.product.id,
quantity: 1,
name: this.product.name,
price: this.product.price,
options: this.selected
}
},
watch: {
selected: function() {
return this.options = this.selected; //this is initially empty, I want to reset it after form submits
}
},
methods: {
addtocart() {
axios.post('/cart/', this.$data)
.then(flash(this.product.name + ' was added to cart'))
.then(this.resetForm());
},
、Vuejsができません:
<form action="{{ url('/cart') }}" method="POST" class="side-by-side reset">
{{ csrf_field() }}
{{-- form for my super not working with options vue component --}}
<input type="hidden" name="id" v-model="this.id" value="{{ $product->id }}">
<input type="hidden" name="name" v-model="this.name" value="{{ $product->name }}">
<input type="hidden" name="price" v-model="this.price" value="{{ $product->price }}">
@if(! $product->group->options->isEmpty())
<select name="options" class="options" v-model="selected" autofocus required>
<option value="">Please select one</option>
@foreach($product->group->options as $option)
<option class="reset" value="{{ $option->name }}">{{ $option->name }}</option>
@endforeach
</select>
@endif
<addToCart :product="{{ $product }}" :selected="selected" @submit.prevent="onSubmit()"></addToCart>
はここに私のVUEファイルです: はここにblade.phpファイルです私は直接小道具価格を変更し、私はそれをリセットする方法を見つけることができません。 ご協力いただきありがとうございます。
元の値を持つ別のプロパティがある場合は、 'this.changedProperty = this.originalValue' – ggdx