我是一名全新的AngularJS使用者,迄今为止,我很喜欢它,特别是模型/视图绑定。我想利用这个功能来构建一个简单的“添加到购物篮”模块。
这是我的控制器内容:
现在这个方法虽然可行,但我非常怀疑这是在模型中创建新产品对象的正确方法。 然而,这就是我的完全缺乏AngularJS经验的地方。
如果这不是最佳实践,那么该怎么做呢?
function BasketController($scope) {
$scope.products = [];
$scope.AddToBasket = function (Id, name, price, image) {
...
};
}
这是我的HTML代码:
<a ng-click="AddToBasket('237', 'Laptop', '499.95', '237.png')">Add to basket</a>
现在这个方法虽然可行,但我非常怀疑这是在模型中创建新产品对象的正确方法。 然而,这就是我的完全缺乏AngularJS经验的地方。
如果这不是最佳实践,那么该怎么做呢?
app.controller('myController', ['$scope', '$routeParams', function($scope, $routeParams) { $scope.param1 = $routeParams.param1; $scope.param2 = $routeParams.param2; }]);
然后在路由配置中定义那些参数:.when('/myRoute/:param1/:param2', { templateUrl: 'views/myView.html', controller: 'myController' })
现在,当您访问/myRoute/valueForParam1/valueForParam2
时,AngularJS将自动创建myController
控制器,并将$routeParams
注入其中。因此,$scope.param1
和$scope.param2
将包含相应的值:valueForParam1
和valueForParam2
。 - bresleveloper