theo dõi

Gần nhất :

Thống kê câu hỏi

Chuyên mục : Lập trình
Topic : JavaScript
Hỏi lúc:
Lượt xem: 9,574

Sự khác biệt giữa angular.service vs angular.factory, cách dùng?

Đặng Kim Sa Đặng Kim Sa
 01  01  00
01 bình chọn hữu ích bởi Đỗ Duy
9,574 xem 04 theo dõi 01 hữu ích hỏi –

Bạn biết ai đó có thể trả lời câu hỏi này?. Bạn có thể giúp đỡ bằng cách tìm những người giỏi nhất:

user user user user user

Lê Thanh Trang Lê Thanh Trang
 00  00  01
angular.service('myService', myServiceFunction);
angular.factory('myFactory', myFactoryFunction);

Service: Các function bạn viết với new-ed

myInjectedService  <----  new myServiceFunction()

Factory: Các function bạn viết với invoked

myInjectedFactory  <---  myFactoryFunction()

Chẳng hạn viết một hàm service 1 API

function myServiceFunction() {
  this.awesomeApi = function(optional) {
    // calculate some stuff
    return awesomeListOfValues;
  }
}
---------------------------------------------------------------------------------
// Injected in your controller
$scope.awesome = myInjectedService.awesomeApi();

hoặc sử dụng factory

function myFactoryFunction() {
    return function() {
        var a = 2;
        this.a2 = function() {
            return a*2;
        };
    };
}
---------------------------------------------------------------------------------
// Injected in your controller
var myShinyNewObject = new myInjectedFactory();
$scope.four = myShinyNewObject.a2();
9,405 xem 00 hữu ích trả lời –
Đỗ Hải Nam Đỗ Hải Nam
 00  00  01

Bạn chỉ cần viết

service = function (a,b,c) {
    this.name = ...   
}

factory = function (a,b,c) {
    // logic, etc ...  
    return {
        name: ...
    }
}
9,401 xem 00 hữu ích trả lời –