Javascript 按模型/范围对象查看-ui路由器/angularjs

Javascript 按模型/范围对象查看-ui路由器/angularjs,javascript,angularjs,angularjs-ng-repeat,angular-ui-router,Javascript,Angularjs,Angularjs Ng Repeat,Angular Ui Router,是否可以每个模型都有一个视图,即一个项目的编辑视图,并且只显示该特定模型的视图 我有一个任务列表,比如待办事项列表。当我点击一个添加按钮时,我希望编辑视图只显示该列表,而不是我所有的其他列表 对不起,我的英语和可能的术语无知。我对Angularjs是新手 我的代码: index.html <div ng-repeat="list in lists" jui-dg-list="{ handle: 'i.fa-arrows' }" class="md-whiteframe-z2 home-dr

是否可以每个模型都有一个视图,即一个项目的编辑视图,并且只显示该特定模型的视图

我有一个任务列表,比如待办事项列表。当我点击一个添加按钮时,我希望编辑视图只显示该列表,而不是我所有的其他列表

对不起,我的英语和可能的术语无知。我对Angularjs是新手

我的代码:

index.html

<div ng-repeat="list in lists" jui-dg-list="{ handle: 'i.fa-arrows' }" class="md-whiteframe-z2 home-drag list" style="top: {{list.ui_top}}px; left: {{list.ui_left}}px;">
        <md-subheader>{{list.name}}</md-subheader>
        <md-list>
          <md-item ng-repeat="task in list.tasks">
            <md-item-content>
             <div>
                <span>{{task.description}}</span>
                <span>{{task.completed}}</span>
                <span>{{task.priority_id}}</span>
                <i class="fa fa-trash-o" ng-click="deleteTask(task, list)"></i>
             </div>
            </md-item-content>
          </md-item>
          <div ui-view="newTask"></div>
          <i class="fa fa-plus" ng-click="goToState('home.newTask', {id: list.id})"></i>
        </md-list>
        <i class="fa fa-times" ng-click="deleteList(list)"></i>
        <i class="fa fa-arrows"></i>
    </div>
使用此代码,当我单击添加新任务时,newTask视图将显示在每个列表上,而不是我单击的列表上

这是意料之中的,因为在我的ng repeat中我有
,所以当我进入newTask状态时,每个名为newTask的ui视图都会显示出来


是否有任何方法仅针对单击的模型实现此目标?

有一个Q&A,其中详细解释了我们如何解决此问题。还有普朗克。我想说,这涵盖了你的场景,非常感谢!我正在搜索至少一个小时,但找不到此问答。请检查,您将看到。。也许你需要不同的答案。。。这是一个很好的暗示,但我想要的是有点不同。虽然这是一个很好的解决办法,如果我找不到答案,我会试试。再次感谢。
$stateProvider.state('home', {
      url: '/',
      templateUrl: 'views/home.html',
      controller: 'HomeCtrl',
      resolve: {
              notes: ['NotesLoader', function(NotesLoader){
                return NotesLoader();
              }],
              lists: ['ListsLoader', function(ListsLoader){
                return ListsLoader();
              }]
            }
    });

$stateProvider.state('home.newTask', {
      url: 'list/:id/task/create',
      views: {
        'newTask@home': {
            templateUrl: 'views/home.newTask.html',
            controller: 'NewTaskCtrl'
        }
      }
    });