2016-02-29 66 views
-1

我在做代碼審查屬性有效,發現自定義指令與內部屬性的HTML標籤:其內部指令HTML標籤AngularJS

<form-field help="Use <b>foo</b> option to blah blah"></form-field> 

我覺得非常不尋常的,並認爲它不會工作在舊的瀏覽器。但是,當我和這個代碼的作者檢查 - 事實證明,它適用於我們有(10 +)的每個版本的IE和Chrome/FF沒有任何問題。

此外,我在W3C驗證器(validator.w3.org)中檢查它,它看起來像HTML允許在屬性內有非轉義標記。這個SO回答Can data-* attribute contain HTML tags?也證實了這一點。

所以我的問題是:這可以使問題與AngularJS一起使用嗎?這種行爲會在Angular 2.0中改變嗎?最後是這個接受的屬性使用情況?

我個人希望是這樣的:

<form-field> 
    <help> 
    Use <b>foo</b> option to blah blah 
    </help> 
</form-fild> 
+0

即使它有效,它也很難看。爲什麼不使用transclude呢? –

+0

好點@JBNizet,但這個指令已經使用transclude爲主要內容(表單控制,例如輸入),此外在某些情況下,它還必須顯示幫助信息 - 因爲我的大學使用屬性幫助消息內容 – csharpfolk

+1

您可以有幾個transcludes角1.5。 –

回答