编辑:添加了$ routeProvider和$ routeParams,但$ routeParams.productId始终未定义。这是我最初的尝试,但我认为这是错误的方式。无论如何它暂时不起作用。
我开始学习AngularJS,我有一个非常简单的问题: 根据URL中包含的ID,我想显示不同的BD记录。
...
<div ng-app=MyApp>
<div ng-controller="MyCtrl">
{{ record }}
</div>
</div>
...
我的Javascript文件:
var MyApp = angular.module("MyApp",[]);
MyApp.config(['$routeProvider', function($routeProvider) {
$routeProvider
.when('/get/:productId', {
controller: 'MyCtrl'
});
}])
MyApp.controller('MyCtrl',['$scope','$routeParams','$http',
function($scope,$routeParams,$http) {
$http.get("/get/"+$routeParams.productId).success(function(data) {
$scope.record = data;
});
}])
我尝试使用$ routeProvider和$ routeParams但没有成功。
提前谢谢你, 比尔
答案 0 :(得分:10)
你需要两件事,在你的控制器中注入$ routeParams并使用get方法创建一个有效的路径
MyApp.controller('MyCtrl',['$scope','$http',"$routeParams",
function($scope,$http,$routeParams) {
$http.get("/get/"+$routeParams.productId).success(function(data) {
$scope.record = data;
});
};