美文网首页
javascript设计模式(二)单体模式

javascript设计模式(二)单体模式

作者: Sccong | 来源:发表于2017-07-23 23:46 被阅读0次

这个模式之前就有写过,只是当时不知道这种模式的正规叫法.
当时把该项目的一些需要ajax请求的方法提取到一个database.js里。

// datanbase.js
export default class Database {
  //一些提取出来的方法
}

因为是class类,不能直接使用,得先实例化,但是如果每次都实例,对性能会有很大的影响。所以当时做了一个判断。

import database from './database';

let databaseFactory = (function () {

    let instance;

    function init() {
        return new database();
    }

    if (!instance) {//如果没有instance,就new一个
        instance = init();
    }

    return instance;//如果有了就直接return instance
})();

module.exports = databaseFactory;

后面使用的时候,都这样使用即可。

let dbManager = require('../utils/DatabaseFactory');
dbManager.xxxxx

相关文章

网友评论

      本文标题:javascript设计模式(二)单体模式

      本文链接:https://www.haomeiwen.com/subject/krdvkxtx.html