Javascript Angularjs ui路由器无法解析';结果/0';来自州';调查';
我正在尝试设置我的第一个angular应用程序,但在使用ui路由器时遇到了困难。从功能上讲,用户填写一份调查,然后将其个人调查结果发送到页面。提交时,用户的结果将与id一起保存到工厂,id在每次提交时递增。我似乎无法让ui路由器解析到那个个性化页面 相反,我得到了以下错误: 无法解析来自状态“调查”的“结果/0” FormCrtl中的代码:Javascript Angularjs ui路由器无法解析';结果/0';来自州';调查';,javascript,angularjs,routing,angular-ui-router,angularjs-routing,Javascript,Angularjs,Routing,Angular Ui Router,Angularjs Routing,我正在尝试设置我的第一个angular应用程序,但在使用ui路由器时遇到了困难。从功能上讲,用户填写一份调查,然后将其个人调查结果发送到页面。提交时,用户的结果将与id一起保存到工厂,id在每次提交时递增。我似乎无法让ui路由器解析到那个个性化页面 相反,我得到了以下错误: 无法解析来自状态“调查”的“结果/0” FormCrtl中的代码: routerApp.controller('FormCtrl', ['$scope', 'questions', 'users', 'results',
routerApp.controller('FormCtrl', ['$scope', 'questions', 'users', 'results',
function($scope, questions, users, results){
$scope.responses = [];
$scope.results = [];
$scope.multChoice = [];
$scope.imageQuestions = [];
$scope.questions = questions.questions;
$scope.code = results.lastId;
results.results.push($scope.results);
results.lastId++;
console.log($scope.results);
users.create({responses: $scope.responses, results: $scope.results});
ResultsCtrl中的代码:
routerApp.controller('ResultsCtrl', ['$scope', '$stateParams', 'results', function($scope, $stateParams, results){
console.log('hello world');
}]);
来自ui路由器的代码:
.state('results', {
url: '/results/{id:int}',
templateUrl: '../../views/results.html',
controller: 'ResultsCtrl',
resolve: {
post: ['$stateParams', 'results', function($stateParams, results) {
return results.results[id];
}]
}})
来自调查html的代码:
</div>
<label>Please confirm that you have answered all of the questions</label>
<button ng-click = 'addUser()' ui-sref = 'results/{{code}}'>Submit</button>
</form>
您在
ui sref
指令中使用了错误的状态名称,从而导致出现错误。ui-sref
指令确实接受stateName
并在注册的州中搜索它
ui-sref = 'results({id: code})'
当你点击按钮时,没有发生任何事情吗?控制台打印是什么?正确,我在标题中得到了错误你在标题中的意思是什么?addUser()定义在哪里?这没有错误,所以这是朝着正确方向迈出的一步,但没有重定向。是的,没有错误,但也没有重定向。否,正如上面的答案所建议的,在更改我的代码之后,就不再是这样了;但是,代码仍然不起作用。有没有关于如何使改道工作的建议?
ui-sref = 'results({id: code})'