我對 vuejs 非常陌生,正在致力于實(shí)現(xiàn)一個(gè)可以在任務(wù)創(chuàng)建后更新的待辦事項(xiàng)列表。我在包含要更新的文本區(qū)域的表中的每一行都有一個(gè)子組件,該子組件向父待辦事項(xiàng)列表組件發(fā)出一個(gè)事件,該事件使用 axios 調(diào)用更新方法。我試圖更新的字段是“描述”。子組件代碼:<textarea v-model="task.description" @blur="$emit('update', task)" /><script>export default { props: { task: { type: Object, required: true }父組件代碼:<ChildComponent v-for="task in tasks" :key="task.id" :task="task" :project="project" @delete="deleteTask" @update="updateTask" />...methods: { async updateTask(taskData) { try { await this.$axios.patch(`projects/${taskData.project.id}/tasks/${taskData.id}`) } catch (err) { console.error(err) } }使用 vue devtools chrome 擴(kuò)展,事件選項(xiàng)卡顯示:name:"update"type:"$emit"source:"<ChildComponent>"payload:Array[1] 0:Object created_at:"2020-07-07 14:01:46" created_by:1 description:"Updated Task Description" id:43 project:Object project_id:1 updated_at:"2020-07-07 14:01:46"但是,以下是我的 api 控制器的 JSON 響應(yīng):{"data":{ "id":43, "created_by":1, "project_id":1, "description":"Original Description", "created_at":"2020-07-07 14:01:46", "updated_at":"2020-07-07 14:01:46"}}和任務(wù)控制器:$task->update($request->all()); return response()->json([ 'data' => $task, ], 202);目前,文本區(qū)域沒有更新或保存到數(shù)據(jù)庫中。我不知道我錯(cuò)過了什么。感謝任何幫助,我嘗試實(shí)施我在網(wǎng)上找到的內(nèi)容但沒有成功。
1 回答

函數(shù)式編程
TA貢獻(xiàn)1807條經(jīng)驗(yàn) 獲得超9個(gè)贊
看來您沒有將數(shù)據(jù)修補(bǔ)到服務(wù)器。請嘗試以下操作:
async updateTask(taskData) {
try {
await this.$axios.patch(`projects/${taskData.project.id}/tasks/${taskData.id}`, taskData)
} catch (err) {
console.error(err)
}
}
第二個(gè)參數(shù)$axios.patch應(yīng)該是您要發(fā)送到服務(wù)器的數(shù)據(jù)。
- 1 回答
- 0 關(guān)注
- 139 瀏覽
添加回答
舉報(bào)
0/150
提交
取消