我的控制器中弹出了一段重复的代码:
// Get first product from list
Product.get_details( id )
.success(function ( data ) {
// Setup product details
$scope.active_product = data;
});
我想将它放入工厂,以便我可以干我的代码。
当我需要访问$scope.active_product
并通过摘要循环观看时会出现问题。
// ajax function returns product data
var get_details = function( id ){ ... }
var set_active_product = function( active_product, id ){
// Get first product from list
get_details( id )
.success(function ( data ) {
// Setup product details
active_product = data;
});
};
Product.set_active_product( $scope.active_product, id );
这可行,但$scope
循环不会监视$digest
。
有没有办法在不传入$scop
ed变量的情况下执行此操作?
答案 0 :(得分:0)
感谢@PetrAveryanov指出$resource。
使用$ resource获取数据,并最初使用空对象填充$scope.active_product
。这意味着active_product
仅显示$resource
填充的时间。
return $resource('/path/to/resource');
$scope.active_product = Product.get({ id: id });