这看起来非常简单。但我无法弄清楚它应该如何运作。
我有一个无序的项目列表,它们是从ng-repeat构建的,它本身基于一组数据对象。
所以在DOM(在Jade中):
div#projectListing
ul.sidebar-listing
li.sidebar-header Theatrical Projects
li.sidebar-item(ng-click="loadProject()", ng-repeat="project in theatricalProjects | orderBy:'title'") {{ project.title }}
现在我的侧边栏中有一个很好的项目列表,但我希望能够单击其中一个元素,并将完整模型与项目绑定。什么是'角度'方法来处理这个?我是否需要创建自定义指令而不是使用ng-click()?我是否需要为每个列表指定一个具有唯一名称的ng-model?
感谢。
答案 0 :(得分:3)
我假设您在点击时需要project
内loadProject
。您可以将project
作为参数传递给loadProject并在函数定义中接受它:
li.sidebar-item(ng-click="loadProject(project)", ng-repeat="project in theatricalProjects | orderBy:'title'");
基本上ng-repeat将为所有重复元素(li.sidebar
)创建一个子范围,因此所有这些子范围都将具有与它们相关联的属性project
以及方法内部{{} 1}}您应该也可以使用loadProject()