我正在處理一個具有幾種不同狀態的隔離範圍自定義指令。 在這個指令中使用ui-router/ui-view來處理狀態是否有意義?ui-router裏面的自定義角度指令,有道理嗎?
這是一個列出筆記的「筆記小部件」。如果沒有筆記,它將顯示一條消息,而不是顯示他們應該添加筆記的列表。如果正在加載筆記,則會顯示筆記正在加載。如果用戶通過單擊上面提到的添加或+來添加註釋,則該視圖是文本框。所以至少有4種不同的觀點。
我最初的直覺是,它會污染指令,並給它一個硬依賴於ui-router和我的應用程序,因爲它定義了狀態。我只是擔心嗎?
似乎有點過於複雜給我。爲什麼不只是使用ng-if和/或ng-show來有條件地顯示消息:如果0註釋,顯示列表如果項目> 0,顯示文本框和臨時隱藏列表(如果「+」按鈕被擊中)。這就是說,AngularJS的美妙之處在於你可以自由處理你想要的東西。但是,personnaly我會以另一種方式,定義我的UI路由器狀態,並在狀態模板中附加指令(如果需要)。 –
@Bonatoc這就是我通常會這樣做的,只需使用帶有$ scope變量的ng-if/ng-switch來控制指令的狀態。有時候,這會讓人感到混亂,但我並沒有一個一致的方法來控制不同指令之間的狀態。真正我要問的是,如果有更好的模式或更復雜的方式來控制單個指令的狀態。 –