Подтвердить что ты не робот

Как создать однопользовательский сервис в Aurelia?

Я новичок в Aurelia (только использовал его несколько дней), и мне это нравится!

Я знаю, как сделать сервис с Aurelia, но как я могу сделать эту службу одноэлементной, чтобы я мог обмениваться данными между несколькими ViewModels?

Спасибо

4b9b3361

Ответ 1

Просто введите его

По умолчанию контейнер DI предполагает, что все является экземпляром singleton; один экземпляр для приложения. Однако вы можете использовать декоратор оформления, чтобы изменить это.

Ответ 2

Итак, я понял, что слишком много думал об этом. Я пытался зависеть от структуры (Aurelia), чтобы выполнить всю работу, но на самом деле это было простое изменение класса ES6, которое делает его экземпляром.

let instance = null;

export class SingletonService {

	constructor() {
		if(!instance) {
			instance = this;
		}

		return instance;
	}
}