2016-01-24 58 views
0

我一直在研究幾個小時,我承認失敗。我有一個頁面列出了一堆用戶,並允許您重置用戶密碼。您點擊用戶的重置按鈕,它會彈出一個帶有密碼重置表單的模式框。在頁面上的多個表格

我使用Vue.js驗證表單並提交它,全部使用ajax(vue-resource)。用戶列表和獨特模式由Laravel在刀片視圖中生成。

我的問題是,如何爲頁面上的每個表單創建一個唯一的Vue實例(或者我應該做的)?

我的調查建議使用組件,但我似乎無法得到這個工作,所以不確定這是正確的事情,因爲我仍然會在頁面上多次使用相同的組件。 (並且每個表單都有唯一的數據(用戶標識))。

謝謝!

回答

0

實際上,多組件實例是最好的選擇。如果您在for循環中生成用戶,請將用戶標識作爲組件的屬性傳遞。

@foreach ($users as $user) 
    <form-component id="{{ $user->id }}"</form-component> 
@endforeach 

var FormComponent = Vue.extend({ 
     template: '<form> \ 
     <input name="user-{{id}}"></input>\ 
     <button>Submit</button> \ 
     </form>', 
    props: ['id'], 
}); 

Passing Data with Props

+0

謝謝!很高興知道我正在尋找正確的方向。我在表單中有一些東西,所以寧願在頁面內寫出表單而不是在模板屬性中。我認爲只要它在組件標籤內部就可以了?目前它一直抱怨它是一個片段實例,並且值不是按組件顯示的。 – Nutbolt