【问题标题】:AngularJS $state.go pass always empty valure for parameterAngularJS $state.go 始终为参数传递空值
【发布时间】:2016-03-27 12:02:32
【问题描述】:

我尝试传递一个参数 white $stete.go。

路由器

$stateProvider.state('login.signin', {
    url: '/signin',
    params: {
        login_event: ''
    },
    templateUrl: "assets/views/login_login.html",
    title: 'Login',
    resolve: loadSequence('moment', 'userLoginCtrl')
});

打电话

$state.go('login.signin', { login_event: "session_expired"});

测试

console.log('toParams: ');
console.log(toParams);

console.log('fromParams: ');
console.log(fromParams);

console.log('$stateParams: ');
console.log($stateParams);

console.log('$state.params: ');
console.log($state.params);

即使我在调用中传递了一个值,我在“toParams”中得到的值始终是默认值。

我已经尝试了很多次来获取一个值,但是“toParams”只有默认值。

感谢您的帮助。

【问题讨论】:

    标签: javascript angularjs routing angular-ui-router angularjs-routing


    【解决方案1】:

    params 对象的当前实现(简写实现),它不会考虑从$stateParms 传递的参数,它将默认值login_event''。您应该更改您的 params 对象实现,以便默认值将是 '' 就像 value: '' 如果它没有通过。

    Docs Link

    代码

    params: {
        login_event: {
           value: ''
        }
    },
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多