亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

vue項目異步問題之setTimeout使用

vue項目異步問題之setTimeout使用

白衣染霜花 2018-07-23 09:30:35
現有項目為 選擇規格創建商品的模塊,單獨封在一個子組件中。做編輯功能時,往子組件傳值,需要把已經選擇的值反顯出來。首先頁面加載的時候,要初始化數據,即先查詢出規格列表。但是做反顯的時候,不能成功,打印沒有初始化數據。即涉及初始化數據和反顯的數據先后問題。我使用了setTimeout 在created鉤子函數中,讓其延遲500ms再去將反顯的值賦上去就可以了。但是覺得不太好~~而且時間設成100ms 就不行。。。請問setTimeout能不能使用,有什么利弊?有沒有更好的實現方法~~~謝謝
查看完整描述

1 回答

?
弒天下

TA貢獻1818條經驗 獲得超8個贊

你在 create 鉤子函數里寫的話,數據還沒有過來,當然打印沒有初始化的數據啊,使用setTimeout缺點就是時間不好把握,如果設置時間長了,造成浪費,時間短了,數據不會出來,所以,樓主要找到數據過來的那個點,樓主應該使用props傳遞數據的吧,建議用watch來觀察這個數據,當有數據傳遞過來,觸發對應的事件

export default {
    props: {        data
    },
    watch: {        data (val) {
            // 說明數據過來了,執行反顯數據的操作            console.log(val)
        }
    }
}


查看完整回答
反對 回復 2018-07-30
  • 1 回答
  • 0 關注
  • 1379 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號