0
我想根據其父作用域中的某個變量選擇指令templateUrl。我無法使用templateUrl函數,因爲它還沒有範圍。我可以從$ templateCache中編譯模板(請注意它已經存在,我沒有加載它),但是恐怕會對性能產生負面影響(比如說這是一個表格單元指令..還有不少細胞)。使用父變量/繼承範圍的Angular.js指令模板
我還有其他更好的選擇嗎?
我想根據其父作用域中的某個變量選擇指令templateUrl。我無法使用templateUrl函數,因爲它還沒有範圍。我可以從$ templateCache中編譯模板(請注意它已經存在,我沒有加載它),但是恐怕會對性能產生負面影響(比如說這是一個表格單元指令..還有不少細胞)。使用父變量/繼承範圍的Angular.js指令模板
我還有其他更好的選擇嗎?
確實沒有其他辦法。雖然你應該用$compile
這種方式來達到某種令人滿意的性能結果。 https://stackoverflow.com/a/22646392/301596
恐怕不是。我已經有了類似的需求,並且使用'$ compile''函數找不到更好的解決方案。至於性能:我不確定它是否會降低性能 - 因爲如果您爲它提供'templateUrl'屬性,Angular會做同樣的事情。 – Charminbear
是的,但如果我沒有弄錯,它會執行兩次,一次是在它自己的編譯過程中,然後是在鏈接函數準備就緒時再次執行。這也意味着當其他所有事情都準備好時它就開始編譯,所以它必須有點慢..我想..除非它不編譯時,你不提供模板..這是有道理的,我猜 – foxx