2016-02-24 44 views
2

說我有以下的html:如何延遲angularJS插值故意

<div>{{name}}</div> 

我想推遲{{name}}插值,這樣我可以看到HTML(原始數據)的花括號。

我的第一個想法是創建一個名爲pause的屬性指令,並且在此指令的編譯函數中,只需撥打$timeout即可暫停一段時間。

html應該看起來像這樣,10000是暫停時間間隔。

<div pause="10000">{{name}}</div> 

但它沒有暫停,是否有另一種方式來實現這一目標?

+0

那麼你有意要看10秒鐘的大括號嗎?只是想確定我很清楚。另外,我可以在你的上下文中詢問這個目的嗎? –

+0

是的,這是正確的。我們的項目中存在一個缺陷,針對這個問題,我們決定使用ng-cloak來解決這個問題,它是固定的。然而,我們項目中的質量過程需要一個測試用例來驗證修復,這種插值慢度不會每次都發生,所以我們需要一種不斷重現插值慢度的方法,以便我們驗證我們的修復。我知道這聽起來很愚蠢,但我們有非常嚴格的QA流程規則。 – doranT

+1

感謝您的回覆。這非常有趣。那麼更廣泛的問題是試圖找出測試ng-cloak是否在自動化測試中工作的最佳方法? –

回答

2

ng-non-bindable添加到元素可防止插入元素的內容。

AngularJS docs

<div>Normal: {{1 + 2}}</div> <!-- 3 --> 
<div ng-non-bindable>Ignored: {{1 + 2}}</div> <!-- {{1 + 2}} --> 

要推遲這個過程中,您的自定義指令可能最初ng-non-bindable指令添加的元素並在超時後刪除它。

+0

感謝您的解決方案!這真的很聰明 – doranT