Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript AngularJS:单路由应用程序架构_Javascript_Angularjs - Fatal编程技术网

Javascript AngularJS:单路由应用程序架构

Javascript AngularJS:单路由应用程序架构,javascript,angularjs,Javascript,Angularjs,试图确定如何利用Angular的工具集解决我试图解决的问题 我的应用程序将是一个单页应用程序,但它也将只有一个路由。根本没有URL状态中的其他“状态”。据我所知,您可以利用控制器和视图与路由的1:1关系 我希望页面上的组件具有控制器+视图组合。(组件可以是小部件、模式窗口等)。 在这种情况下有没有办法利用Angular 注意:我看到了,但这仍然严重依赖于创建应用程序的“状态”并将其绑定到URL。要包含HTML部分,可以使用ng include指令。这可以通过几种不同的方式与ng controll

试图确定如何利用Angular的工具集解决我试图解决的问题

我的应用程序将是一个单页应用程序,但它也将只有一个路由。根本没有URL状态中的其他“状态”。据我所知,您可以利用控制器和视图与路由的1:1关系

我希望页面上的组件具有控制器+视图组合。(组件可以是小部件、模式窗口等)。

在这种情况下有没有办法利用Angular


注意:我看到了,但这仍然严重依赖于创建应用程序的“状态”并将其绑定到URL。

要包含HTML部分,可以使用
ng include
指令。这可以通过几种不同的方式与
ng controller
指令耦合:

您可以在
ng控制器内嵌套带有
ng include
的元素:

<div ng-controller="testCtrl">
  <div ng-include="'view.html'"></div>
</div>
您还可以在同一元素上组合
ng include
ng controller
指令:

<div ng-controller="testCtrl" ng-include="'view.html'"></div>

请注意,在上面的每个示例中,
ng include
指令中的字符串文字用单引号括起来-这是因为该指令需要一个表达式

根据您试图实现的目标,您可能需要使用其中一种或多种技术。我还希望您需要大量使用指令(例如,您可以使用),这些指令也可以有自己的控制器

我用上面列出的
nginclude
选项的几个工作示例设置了一个Plunker,包括动态交换包含的模板


我不能说实际构建这样的生产应用程序是否可行,但至少乍一看是可能的。

您所描述的是一个“指令”。angular指令有一个视图、一个控制器,甚至它自己的作用域(取决于它的设置方式)——它可以被视为一个自包含的小部件。我不建议对小部件使用路由。
<div ng-controller="testCtrl" ng-include="'view.html'"></div>