【发布时间】:2016-03-28 19:15:35
【问题描述】:
使用多个嵌套视图和 ControllerAs 时遇到问题
这里是我的咖啡脚本和模板示例
州:
.state "users" ,
abstract: true,
url:"/users",
views:
"MainLayout":
templateUrl:"users.html",
.state "users.add" ,
url:"/users-add",
views:
"ContentLayout":
templateUrl:"users-add.html",
controller:"UsersAddController",
contollerAs:"formctrl",
"SideLayout":
templateUrl:"users-side.html",
cache: false
.state "users.list" ,
url:"/users-list",
views:
"ContentLayout":
templateUrl:"users-list.html",
controller:"UsersController",
contollerAs:"userlist"
"SideLayout":
templateUrl:"users-side.html",
cache: false
users.html
<div class="content" ui-view="ContentLayout"></div>
<div class="side" ui-view="SideLayout"></div>
用户列表.html
{{ userlist.result }}
users-add.html
{{ formctrl.addresult }}
users-side.html
<menu>
<a ui-sref="users.list">List</a>
<a ui-sref="users.add">Add</a>
</menu>
UsersController 作为示例
(->
UsersController = ()->
vm = @
vm.result = "Result"
return vm
angular
.module("myapp")
.controller("UsersController", UsersController))()
这根本不工作,但如果我用 $scope 做,一切正常。我做错了什么?
【问题讨论】:
-
为什么要在控制器中返回 vm?
-
因为没有该 cotrollerAs 语法将无法工作。
标签: angularjs coffeescript angular-ui-router