搜尋

首頁  >  問答  >  主體

angular.js - 執行順序問題,angular需要後台拿到資料後編譯directive

打開一個頁面,需要先發起一個$http請求從後台拿到數據,然後將數據的某幾個字段作為參數傳遞給directive中去編譯。

現在問題是頁面一打開好像就執行directive中的程式碼了。因為數據還沒拿到,會報錯。如何調整?

已嘗試並成功:先拿程式碼資料然後使用$compile去動態編譯directive然後append到dom。
想了解其他好的方法。

高洛峰高洛峰2828 天前770

全部回覆(3)我來回復

  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-15 17:14:25

    1.可以使用Promise封裝AJAX請求, 在指令中就可以在接收到結果後再進行後續操作.
    2.可以直接在指令中通過$watch來檢查是否返回了正確數據,然後再進行後續操作.但建議$watch中只用來檢查資料更新狀態,不做其他操作.

    回覆
    0
  • 为情所困

    为情所困2017-05-15 17:14:25

    你的需求是什麼不明確,你只是描述了一個directive傳值編譯問題

    回覆
    0
  • 伊谢尔伦

    伊谢尔伦2017-05-15 17:14:25

    講資料物件bind到dom上,在指令去取得dom上的數據,然後在controller裡面去請求資料

    回覆
    0
  • 取消回覆