当使用$ state不起作用时隐藏的参数 - AngularJS,Ionic

时间:2015-02-02 08:06:25

标签: angularjs url state params ionic

我是使用离子骨架的初学者。

我尝试将stateParams用于州,但我不希望它在URL中公开。

我可以在将状态添加到URL(url /:param1)时使用stateParams但是当我尝试在' params'正如此处[How to send and retrieve parameters using $state.go toParams and $stateParams?]和[AngularJS: Pass an object into a state using ui-router]所述,我收到以下错误:

  

未捕获错误:[$ injector:modulerr]由于以下原因导致无法实例化模块surveyApp:   TypeError:undefined不是函数       在getArrayMode(http // localhost:8100 / lib / ionic / js / ionic.bundle.js:38251:39)       在新的Param(http // localhost:8100 / lib / ionic / js / ionic.bundle.js:38224:21)       在http // localhost:8100 / lib / ionic / js / ionic.bundle.js:38857:39       在forEach(http // localhost:8100 / lib / ionic / js / ionic.bundle.js:8147:20)       在Object.stateBuilder.ownParams(http // localhost:8100 / lib / ionic / js / ionic.bundle.js:38856:7)       在registerState(http // localhost:8100 / lib / ionic / js / ionic.bundle.js:38975:72)       在$ StateProvider.state(http // localhost:8100 / lib / ionic / js / ionic.bundle.js:39460:5)       在$ StateProvider.IonicModule.factory.config。$ stateProvider.state(http // localhost:8100 / lib / ionic / js / ionic.bundle.js:45621:31)       在http // localhost:8100 / js / app.js:88:3       at Object.invoke(http // localhost:8100 / lib / ionic / js / ionic.bundle.js:11994:17)   HTTP // errors.angularjs.org / 1.3.6 / $注射器/ modulerr P0 = surveyApp&安培; P1 = TypeEr ... 3A%2F%2Flocalhost%3A8100%2Flib%2Fionic%2Fjs%2Fionic.bundle.js%3A11994%3A17)

这是我的代码片段:

.state('tab.mytab', {
    url: '/mytab/:name',
    params: ['item'],
    views: {
        'tab-mytab': {
            templateUrl: 'templates/mytab/item.html',
            controller: 'MyTabCtrl'
        }
    }
})

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

你使用的params的数组语法是旧的,不再支持,因为0.2.12我相信

您可以使用

params: { item: null}

对象为params而不是数组。 Docs