Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs angular 1 ui路由器在状态之间维护url参数数据_Angularjs_Angular Ui Router - Fatal编程技术网

Angularjs angular 1 ui路由器在状态之间维护url参数数据

Angularjs angular 1 ui路由器在状态之间维护url参数数据,angularjs,angular-ui-router,Angularjs,Angular Ui Router,我正在Angular 1和Ui路由器上使用一个应用程序,我正在尝试使URL中的数据在不同的状态之间保持不变。我读过Angular 2.0上的queryParamsHandling:“保留”功能。但是,我目前仍然使用Angular 1,我需要解决如何在不同状态之间保持url数据相同的问题 我正在考虑的一个选择是保留url:州与州之间的参数数据是使用ui sref的,但到目前为止还没有成功 有没有人有解决这个问题的好方法 感谢路由器文件-->route.js: angular .module

我正在Angular 1和Ui路由器上使用一个应用程序,我正在尝试使URL中的数据在不同的状态之间保持不变。我读过Angular 2.0上的queryParamsHandling:“保留”功能。但是,我目前仍然使用Angular 1,我需要解决如何在不同状态之间保持url数据相同的问题

我正在考虑的一个选择是保留url:州与州之间的参数数据是使用ui sref的,但到目前为止还没有成功

有没有人有解决这个问题的好方法

感谢

路由器文件-->route.js:

angular
    .module('moduleName')
    .config(['$stateProvider', stateProvider])

function stateProvider($stateProvider) {
    $stateProvider
    .state('lessonDetails', {
            url: '/:lessonId/details',
            views: {
                'content': {
                    templateUrl: 'lesson/lesson-details.html',
                    controller: 'lessonController'
                }
            }
     });
}
HTML文件-->lesson-details.HTML:

<a ui-sref="lessonDetails({'lessonId': 123})">Go to details</a>

既然您用
angularjs
标记了它,不要以为人们会知道
angular
是如何工作的。最好解释一下你希望你的URL是什么样子,而不是将它与
queryParamsHandling
函数进行比较。我建议您查看
$stateParams
$transition$.params()
以处理url参数。这是正确的解决方案。请检查此链接
angular
    .module('moduleName')

    .controller('lessonController', ['$scope', '$stateParams', lessonController]);

     function lessonController($scope, $stateParams){
        //use lessonId passed as params using $stateParams
        console.log($stateParams.lessonId)
     }