如何证明angular服务是单例的
How to prove that angular services are singleton?
我听说angular的服务是单例的。我怎么能证明呢?对于普通的javascript,我可以创建一个单例模式,并像下面的代码一样证明它。
var mySingleton = (function(){
var instance;
function init(){
var privateRandomNumber = Math.random();
return {
getRandomNumber : function(){
return privateRandomNumber;
}
}
}
return {
getInstance: function(){
if(!instance) {
instance = init();
}
return instance;
}
}
})();
var singleA = mySingleton.getInstance();
var singleB = mySingleton.getInstance();
console.log(singleA.getRandomNumber() === singleB.getRandomNumber());
谁能给我一个代码快照来证明Angular Services是单例的,就像我在上面的代码中做的。
var myApp = angular.module('myApp',[]);
myApp.service('mySingleton', function() {
var privateRandomNumber = Math.random();
return {
Number : privateRandomNumber
};
});
function MyCtrl($scope, mySingleton) {
$scope.randNumber = mySingleton.Number;
}
function MyCtrl2($scope, mySingleton) {
$scope.randNumber = mySingleton.Number;
}
HTML代码
<div ng-controller="MyCtrl">
Hello, {{randNumber}}!
</div>
<div ng-controller="MyCtrl2">
Hello, {{randNumber}}!
</div>
是的,两个randNumber是相同的。
相关文章:
- 和兼容的单例骨干模型
- 有状态单例模块
- 在什么情况下我们需要在javsacript中实现单例类
- 如何将一个单例传递给另一个对象,使该对象的所有实例都引用同一个单实例
- 使用Ext.Ajax.request使ExtJS单例返回对象
- 原始值被称为单例的现象是什么?
- AngularJS 模式单例在服务中未更新视图
- 创建命名空间 Javascript 单例类的对象
- 流星.js单例确认框
- Javascript 单例模式
- 如何将 AMD 模块从单例转换为实例
- 为什么这个javascript单例方法有效
- 扩展现有单例
- JavaScript 对象的单例行为
- ES2015 单例或服务提供商或模块,用于敲除.js组件
- 如何在 chrome 开发者控制台中查看在 DOJO 中创建的单例对象
- 在单例模式中引用变量的根父级
- Angular 2服务单例作用域问题
- 如何证明angular服务是单例的
- AngularJS服务单例