Angularjs 将$index传递给SlideNav

Angularjs 将$index传递给SlideNav,angularjs,angular-ui-router,angular-material,Angularjs,Angular Ui Router,Angular Material,我正在创建一个简单的网页,其中包含三个视图(主页、列表和表格),用户(姓名和城市)。在表格视图中,我应该能够添加数据并通过SlideNav编辑创建的数据(我使用的是角度材质)。 我的问题在编辑部分。如何将所选值的$index传递给SlideNav中的表单?有一次,我从来没有改变我的页面,使用路由的常规解决方案是行不通的 您有任何建议吗?您可以将需要的数据设置到$rootScope中。但是,尽管这是最简单的方法,但将数据添加到rootScope并不好,它会污染rootScope,如果您不能正确更新

我正在创建一个简单的网页,其中包含三个视图(主页、列表和表格),用户(姓名和城市)。在表格视图中,我应该能够添加数据并通过SlideNav编辑创建的数据(我使用的是角度材质)。 我的问题在编辑部分。如何将所选值的$index传递给SlideNav中的表单?有一次,我从来没有改变我的页面,使用路由的常规解决方案是行不通的


您有任何建议吗?

您可以将需要的数据设置到$rootScope中。但是,尽管这是最简单的方法,但将数据添加到rootScope并不好,它会污染rootScope,如果您不能正确更新这些数据,就会导致问题

更好的方法是使用服务,并在服务调用中传递参数中的数据。比如:

angular.module('yourApp', [])
.factory('SomeService', function() {
  var theData;
  return {
    process: function(data) {
    // process the business logic here.
    this.theData = data; // hode the data here, and it can be used in other controller.
    },
    getData: function() {
    return this.theData;
    }
  };
});

然后您可以在另一个控制器中获取数据。

ng单击您已经编写了一个函数,在该函数的旁边传递数据和$index作为parameters@Arun如果我在函数中传递$index,我会收到一个错误,即$index未定义检查此错误@Arun您的解决方案工作正常我尝试了您的解决方案,我发现的问题是,我从未更改页面,因此我甚至无法访问$stateParams.index的值来将其存储在$rootscope中。