AngularJS - 如何将特定状态的应用程序添加到HTML元素

时间:2016-03-21 11:17:11

标签: angularjs

所以我要说我的应用程序名为myApp,我想使用的控制器是MyCtrl。所以我可以将这个应用程序包含在这样的div标签中:

<div ng-app="myApp" ng-controller="MyCtrl">
</div>

让我们说有几种状态,通常我会使用路由器将状态映射到这样的URL:http://example.com/state1http://example.com/state2

如果我想在state2中将这个应用程序包含到div标签中,有没有办法做到这一点?我对角度有点新手,基本上我希望能够构建一个页面,其中包含不同模块的各个部分到页面的不同部分。

3 个答案:

答案 0 :(得分:2)

您需要用户ui-router。具体来说,您将使用ui-view指令指定状态模板进入其父模板或页面的位置。

答案 1 :(得分:0)

你可以使用ng-include:获取,编译并包含一个外部HTML片段。

来自Angular docs:AngularJS API

android:windowSoftInputMode="stateHidden|adjustPan"

答案 2 :(得分:0)

<div ng-app="myApp" ng-controller="MyCtrl">
  <div ui-view>
     //here goes your states
  </div>
</div>

//在你的模块中注入$ stateProvider并配置如下函数:

var routerApp = angular.module('routerApp', ['ui.router']);

routerApp.config(function($stateProvider, $urlRouterProvider) {

$urlRouterProvider.otherwise('/home');

$stateProvider.state("home.state1",{
   url:"home/state1"
   templateUrl:templatename.html,
   controller:MyCtrl,
}).state("home.state2",{
   url:"home/state2"
   templateUrl:templatename.html,
   controller:MyCtrl,
});

})