2017-07-19 109 views
-1
/* 
./main.js 
./js/singleton.js 
*/ 


// main.js 
const Singleton = require('./js/singleton.js); 

// Singelton.Singelton is undefined. 
var singleton = Singleton.Singleton.getInstance(); 
singleton.foo(); // code aint getting this far though. 


/*######################################################*/ 

//singelton.js 
exports.Singleton = function() { 
    this.instance = null; 
    this.getInstance = function() { 
     if (this.instance == null) 
      this.instance = new Singleton(); 
     return this.instance; 
    } 
    this.foo = function() { 
     // I believe it's magic 
    } 
} 

这总结了我正在尝试做的事情,我没有运气在线寻找解决方案。如何从外部.js文件中调用js singleton

在此先感谢。

+0

什么是singelton?你的意思是'单身'?你的错误是什么? – Dalton

+0

错误是// Singelton.Singelton未定义。我提供了一个解决方案,相当微不足道。所以,现在我已经纠正了语义和语法,我很高兴你也提供拼写检查。 – paxy

+0

如果你不说出问题中的错误,很难有人帮助你。此外,如果拼写错误,人们在搜索时不会找到你的问题/答案! – Dalton

回答

0

问题不在于它主要的模式 我做过: console.log(Queue.Queue); 得到这个{Queue:[function]} 这暗示Queue是一个函数。 改变︰

Singelton.Singelton.getInstance(); 
// to 
Singelton.Singelton().getInstnace(); 

工作得很好。