angularjs - 无法使用 $state.go 发送数据

标签 angularjs ngroute

我的 Angular 应用程序中有这段代码。正如代码所说,有多个 View 正在加载,我想传递一个参数。

.state('root.moduleListing', {
    params: ['registerData'],
    views: {
        "main_container": {
            controller: 'ModuleListingController as model',
            templateUrl: 'misc/module-listing/module-listing.tpl.html',
            resolve: {
                registerData: ['$stateParams', function($stateParams) {
                    return $stateParams.registerData;
                }]
            }
        },
        "components_header_header": {
            controller: 'HeaderController as model',
            templateUrl: 'components/header/post-login.tpl.html',
        },
        "components_footer_footer": {
            controller: 'FooterController as model',
            templateUrl: 'components/footer/footer.tpl.html',
        }
    }
}

&我正在使用它来调用

$state.go('root.moduleListing', {'registerdata': response});

&在 Controller 中,我只是想将其记录到控制台。

module.controller('ModuleListingController', function ($scope, $state, registerData) {
    var model = this;
    console.log("registerData : " + registerData);
}

现在应用程序甚至无法启动,即我在控制台中收到错误消息:

failed to instantiate module amcatUI due to:
TypeError: id.match is not a function
    at getArrayMode

最佳答案

状态转换两侧定义的参数类型和 $state.go 的 toParamas 应该是相同的数组或对象。只需在状态定义中添加带有默认值的参数即可。

您需要更新您的代码

params: ['registerData'],

params: {'registerData' : null},

详细解答可以引用“https://stackoverflow.com/a/26204095/1132354”。

编辑

此外,您还需要更新

$state.go('root.moduleListing', {'registerdata': response});

$state.go('root.moduleListing', {'registerData': response});

有一个小拼写错误。

关于angularjs - 无法使用 $state.go 发送数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30775869/

相关文章:

javascript - 在 POST 到 API 之前更改值数组 angularJS

javascript - 我的插件中的 Successcallback 和 Errorcallback

angularjs - 在 UI 路由器中从子状态转换为父状态时更新 url

javascript - Angular RouteParams 发送 ID

angularjs - Angular $ routeProvider和 Controller 作为语法

angularjs - 从 AngularJS 路由中删除 #

angularjs - 如何在网格布局中将 bootstrap 下拉菜单和其他菜单对齐?

javascript - 在 Angular 中使用 jQuery 为抽屉制作动画

Angularjs RouteProvider 多个路由导致相同的 View

javascript - jsPlumb 在 angular.js 中的 View 更改后不会重绘?