服務(wù)與工廠的混淆據(jù)我所知,當我在工廠內(nèi)返回一個被注入控制器的對象時。在服務(wù)內(nèi)部處理對象時,我將使用this什么都不回。我以為服務(wù)是總是單身,而那個新工廠對象每個控制器都會被注射。然而,事實證明,工廠對象也是單例嗎?演示示例代碼:var factories = angular.module('app.factories', []);var app = angular.module('app', ['ngResource', 'app.factories']);
factories.factory('User', function () {
return {
first: 'John',
last: 'Doe'
};});app.controller('ACtrl', function($scope, User) {
$scope.user = User;});app.controller('BCtrl', function($scope, User) {
$scope.user = User;});變時user.first在……里面ACtrl結(jié)果證明user.first在……里面BCtrl也發(fā)生了變化。User是單身人士嗎?我的假設(shè)是在一個工廠的控制器中注入了一個新的實例?
3 回答

手掌心
TA貢獻1942條經(jīng)驗 獲得超3個贊
app.factory('a', fn);app.service('b', fn);app.provider('c', fn);
a
存儲的值來自運行 fn
,換言之: fn()
b
的存儲值來自 new
英 fn
,換言之: new fn()
c
的存儲值來自于 new
英 fn
,然后運行一個 $get
實例的方法
cache.a = fn()cache.b = new fn()cache.c = (new fn()).$get()
this
this.$get
- 3 回答
- 0 關(guān)注
- 491 瀏覽
添加回答
舉報
0/150
提交
取消