代码
var app= angular.module('myApp', ['ngRoute', 'ngResource']);
app.factory('Greeter', ['$resource',function($resource){
return $resource(
'http://123.com/processor-url.php',{
/*inputName:inputName,*/
callback: 'JSON_CALLBACK'
},{
query: {method:'GET',isArray:true}
});
}]);
app
.controller('appointmentController', ['$scope','routeParams', 'Greeter',
function($scope,$routeParams,Greeter){
/*alert("yes");*/
alert($routeParams);
var x = Greeter.query({
myvar: $routeParams
});
$scope.output = x;
}]);
app.controller('homeController', ['$scope', function($scope){
}])
/*Final Config After Loading Everything*/
app.config(['$routeProvider', function($routeProvider) {
$routeProvider.when('/appointments/:myvar', {templateUrl: 'appointments.html', controller: 'appointmentController'});
$routeProvider.when('/home', {templateUrl: 'home.html', controller: 'homeController'});
$routeProvider.otherwise({redirectTo: '/home'});
}]);
数据(当 myvar=1066 时来自http://123.com/processor-url.php )
[
{
"myCodeId": "1066",
"myCodeName": "session test",
"myCodeOwner": "dvg",
"myCodeBody": "",
"myCodeTimesUsedCount": "0",
"myCodeValueAsMins": "0",
"myCodeCreateDate": "2014-07-30 11:04:58",
"myCodeLastEditDate": "2014-07-30 11:05:43",
"isSnippet": "0",
"isDeleted": "0",
"isMyFavorite": "0"
}
]
我使用这段代码 + 假设是 myvar=1066 结果的数据运行。会有错误
TypeError: Cannot read property 'query' of undefined
at new <anonymous> (.../urlTest/:29:24)
在哪里
var x = Greeter.query({
我想知道错误在哪里?正如我在控制器本身内注入 Greeter 一样。
==更新 1]===
我通过将所有 routeParam 修复为 routeParams 来更新代码。
先前的错误已解决。但是,现在错误变为
Error: [$injector:unpr] Unknown provider: routeParamsProvider <- routeParams
http://errors.angularjs.org/1.2.0-rc.3/$injector/unpr?p0=routeParamsProvider%20%3C-%20routeParams
我可能以错误的方式使用 routeParams?因为我想做的是我假设 routeParams 将是 1066 的值,因为这就是“/”符号之后的值。我理解它的功能有错吗?
谢谢