Органзация вкладок
Кто нибудь использует такую штуку как самоорганизующиеся вкладки, это типа когда ваш сайт открыт на нескольких страницах и они сами решают какая вкладка станет роутером и будет с сервером общаться и остальным данные раздавать чтобы синхрон был?
типа добавл в корзину товар на одной вкладке а он сам добавился на остальных. имеет ли смысл такие Шеред Контроллеры (если буду добавлять я их так назову, ну типа контроллер и если изменгишь его свойство на одной вкладке оно и на остальных имзенится, поскольку данные хранятся в контроллерах то, нувыпоняли), добавлять в юишку? Кто вообще таким приемом пользовался? Какие камни? |
Я делал, был геморой, но я слишком устал после тренировки в зале и работы, чтобы писать, может быть как-нибудь потом...
|
kobezzza, не ну у меня автоматика будет, я имею ввиду что если чел создает контроллер не ui.controller, как обычно, а так:
ui.sharedController('User', function(){ }); то этот контроллер как бы синхронится с другими контроллерами в других вкладках автоматом, и все. ну это с точки зрения пользователя, а под капотом у нас одна вкладка берет на себя обязательства рутовой, и все действия запросы к серверу и все такое прочее, если пытаются вызваться из не рутовых контроллеров, то они просто вызываются не у неё а у рутового контроллера. Ну то есть все ассинхронные методы типа таймеров запросов к серверу и промисов, будут вызываться относительно рутового контроллера, а тот, при завершении ассинхронного действия, расшаривать свои данные обычным контроллерам на не рутовых вкладках. правда я не совсем понмиаю как мне сделать что то вроде вызыываем какой то метод у нерутового контроллера, и этот метод мгновенно должен вызвать тот же метод у клона этого контроллера на рутовой вкладке, и мгновенно вернуть результат как будто бы якобы его вернул этот нерутовый контроллер. проблема в том что я пока знаю тока один спсоб обмена между вкладками, это локалсторч события, и это СОБЫТИЯ, мгновенный ретурн сделать не получится. в общем я думаю, стоит ли оно того и как его вообще сделать чтобы прозрачно было для человека. я имею ввиду как синхронить 2 обьекта на разных вкладках и возможно ли это в принципе, а функции? А замыкания? и.т.п. Если не получитя, тогда придется вводить такую сущность как воркер, типа воркер обязан возвращать промис и выполняется только на одной вкладке рутовой. Тогда все конечно будет легко, но ДЛЯ МЕНЯ, как для разработчика, а хотелось бы еще немножко магии, которой пропитана юишка) не хочется скатываться до не волшебных решений) хочется чтобы люди юзали и думали "как блять он это сделал??" ))) |
Часовой пояс GMT +3, время: 13:02. |