我創建了一個指令,其中我有一個作用域(本地),變量爲type
,並且該值應返回相應的模板。 chooseTemplateByType
返回帶有適當模板的字符串,該模板基於type
,例如可能是text_field
。作爲變量而不是字符串訪問模板內的本地作用域變量
template:
chooseTemplateByType(type)
的問題是如何訪問變量類型我的本地範圍的,所以我可以傳遞值進入我的功能chooseTemplateByType
我創建了一個指令,其中我有一個作用域(本地),變量爲type
,並且該值應返回相應的模板。 chooseTemplateByType
返回帶有適當模板的字符串,該模板基於type
,例如可能是text_field
。作爲變量而不是字符串訪問模板內的本地作用域變量
template:
chooseTemplateByType(type)
的問題是如何訪問變量類型我的本地範圍的,所以我可以傳遞值進入我的功能chooseTemplateByType
實現這一目標的最佳途徑是通過傳遞type
變量的指令屬性。
HTML
<my-directive type="foo"></my-directive>
JS
myApp.directive('myDirective', function() {
return {
template: function(elem, attr){
return "<h1>" + attr.type + "</h1>"; // will output <h1>foo</h1>
}
};
});
OR
myApp.directive('myDirective', function() {
return {
templateUrl: function(elem, attr){
return attr.type + '.html'; // will load foo.html
}
};
});
我只使用模板,而不是templateUrl,elem和attr仍然可用? – cassioscabral
這是正確的。我爲你增加了另一個例子。 – mz3
謝謝,這是正確的。雖然我遇到了一個問題,我的函數沒有被正確的值調用。我相信是因爲頁面是負載,但價值還沒有。試圖使用$超時,但它沒有工作,因爲我需要調用'''chooseTemplateByType'''每次用戶更改選擇字段中的值也打破。但如果我找不到解決方案,這足以解決另一個問題。但如果任何人有這樣的問題,可以自由發送鏈接,會很有幫助。 – cassioscabral
有什麼問題嗎? – mz3
是標題,也會提出質疑。 – cassioscabral