javascript - 需要在另一页上 $save()

标签 javascript angularjs

我正在使用 Angular 。我有一个名为 $scope.recruitmentProject 的资源对象,该对象具有 $save() 方法。

我需要将此对象传递到另一个页面,所以我这样做了-

    $state.go('company.editRecruitmentProject', {'project': angular.toJson(recruitmentProject)});

在另一页上我得到这个对象是这样的-

    $scope.project = angular.fromJson( decodeURIComponent( $stateParams.project ) );

现在 $scope.project 没有 $save() 方法。

我应该怎么做才能让它发挥作用?

最佳答案

因为JSON只能序列化数据,不能序列化函数。因此,在这种情况下,我建议您将 project 对象放入单独的服务中,以便两个 Controller 都可以访问它。

// In ProjectService.js
.service('ProjectService', function() {
  // Put project related logic here
}

然后将 ProjectService 注入(inject)您的 Controller 并使用它。

关于javascript - 需要在另一页上 $save(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32515578/

相关文章:

javascript - AngularJS Resolve 等待外部图像加载完成

javascript - 更改函数的加载顺序会意外破坏代码

javascript - 传单只呈现在一个 Angular 落

angularjs - 在每个测试文件中使用相同的变量

javascript - 将 $scope 变量从 Controller 传递到服务

angularjs - 我应该怎么做才能在 WebStorm 的 .ts 文件中解析 'angular'

AngularJS:是否可以使 Controller 中的特定表单输入字段无效?

javascript - Facebook 页面发布时的 Node.js 事件

javascript - 在for循环中动态更改ID属性

javascript - (懒惰)重构后加载谷歌地图不起作用