Another handy pattern to use for frontend applications is the singleton. The singleton ensures that only one instance of a given object exists in your program. Moreover, it provides a global point of access to the object.
Here's what it looks like in practice:
export class MySingleton{ //The constructor is private so we //can't do `let singleton:MySingleton = new MySingleton();` private static instance:MySingleton = null; private constructor(){ } public static getInstance():MySingleton{ if(MySingleton.instance == null){ MySingleton.instance = new MySingleton(); }
return MySingleton.instance; }
} let singleton:MySingleton = MySingleton.getInstance();
We have a class that has a private static instance:MySingleton attribute. Then, we have a private constructor that makes...