javascript - AngularJS 中元素的 subview

标签 javascript angularjs model-view-controller frameworks single-page-application

我想要一个具有以下 View 的单页应用程序(AngularJS):

  • 登录
  • 主视图

现在主视图应该有不同的“元素”: - 工具栏 - 主要内容部 - 2 个侧边栏

我可以将所有这些元素作为 subview 处理吗?我希望为每个“元素”都有一个 .html 模板。

非常感谢!

最佳答案

不要拆分成两个基本 html。对于 Angularjs 应用程序来说,这不是一个好的设计,它会在运行测试用例(单元或端到端测试用例)时产生问题。

请看下面的代码。这里的“userLoggedIn”是一个 $rootscope 变量,用于根据身份验证加载必要的 block 。

<div ng-include="'views/common/loginHeader.html'" ng-show="!userLoggedIn"></div> <!-- loginHeader -->
<div ng-include="'views/common/userHeader.html'" ng-show="userLoggedIn"></div> <!-- userHeader -->  

<div class="container" ng-view></div> <!-- body -->>

<div ng-include="'views/common/footer.html'"></div> <!-- footer -->

身份验证后,您可以为该变量设置 bool 标志或对象。

$rootScope.userLoggedIn= true

(或)

$rootScope.userLoggedIn= {"name":"john smith", "settings":[{}]}

在注销 Controller 中,您可以设置 false 来隐藏身份验证容器并重定向到登录页面。

$rootScope.userLoggedIn= false;

关于javascript - AngularJS 中元素的 subview ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26482227/

相关文章:

javascript - Angular - 如何从 promise 中访问对象

php - responseText 没有显示任何内容

javascript - 在纯JS中替换字符串的最后一个单词,没有jQuery

model-view-controller - 具体来说,什么属于模型、 View 和 Controller ?

javascript - javascript 中的 asp-mvc get 函数不显示更新的模型值

javascript - 返回一个表示图像为 JSON 的 byte[]?

javascript - jquery根据类集选择具有多个类的元素

javascript - 单击一次后如何禁用提交按钮以防止在 Angularjs 中多次提交?

javascript - 使用字典对象动态绑定(bind) High-charts 中的系列

javascript - Jquery prevAll() 以 Angular 方式