我正在处理一个具有几种不同状态的隔离范围自定义指令。 在这个指令中使用ui-router/ui-view来处理状态是否有意义?ui-router里面的自定义角度指令,有道理吗?
这是一个列出笔记的“笔记小部件”。如果没有笔记,它将显示一条消息,而不是显示他们应该添加笔记的列表。如果正在加载笔记,则会显示笔记正在加载。如果用户通过单击上面提到的添加或+来添加注释,则该视图是文本框。所以至少有4种不同的观点。
我最初的直觉是,它会污染指令,并给它一个硬依赖于ui-router和我的应用程序,因为它定义了状态。我只是担心吗?
似乎有点过于复杂给我。为什么不只是使用ng-if和/或ng-show来有条件地显示消息:如果0注释,显示列表如果项目> 0,显示文本框和临时隐藏列表(如果“+”按钮被击中)。这就是说,AngularJS的美妙之处在于你可以自由处理你想要的东西。但是,personnaly我会以另一种方式,定义我的UI路由器状态,并在状态模板中附加指令(如果需要)。 –
@Bonatoc这就是我通常会这样做的,只需使用带有$ scope变量的ng-if/ng-switch来控制指令的状态。有时候,这会让人感到混乱,但我并没有一个一致的方法来控制不同指令之间的状态。真正我要问的是,如果有更好的模式或更复杂的方式来控制单个指令的状态。 –