我有一个问题,我无法找到它的原因。我正在使用Angular和UI-Router。
我的应用有公共部分和私人部分(登录后可访问)。每个都有自己的设计和结构。所以可以说他们彼此独立。
这就是我在index.cshtml中的全部内容:
nc 127.0.0.1 12345
当我使用公共页面时,一切正常。 登录后,当我尝试更改状态时,会在生成的html中插入第二个div。所以它是这样的:
<div ui-view="appView"></div>
其中第一个div是私有页面的容器,第二个div是公共页面的容器。所以它们同时显示。
有关此问题原因的任何提示或想法将不胜感激。 谢谢。
答案 0 :(得分:0)
只使用一个ui-view
指令,并且不要在view
的级别中分隔,而是在states
的级别上。例如:app.public.state1
和app.authenticated.state2
。州然后有自己的模板和控制器和子状态。 app
和app.public
以及àpp.authenticated
应声明为抽象状态,您无法输入并使用它们来构建一些常见的UI(如标题,导航等)以及如果用户已通过身份验证/重定向登录等,则会重新启动...