Невозможно использовать getApplication () в магазине или представлении

Я пишу простое приложение Sencha Touch 2 с новым шаблоном MVC Framework - так что есть модели, хранилища, контроллеры и представления, и все это связано с приложением.

Теперь есть возможность использовать this.getApplication () для получения экземпляра этого суперсубер-класса «Приложение».

И вот проблема - getApplication () возвращает только экземпляр приложения, если я нахожусь в контроллере - в представлении, модели или магазине, он возвращает «undefined».

В принципе, я могу понять идею такого поведения - ваш бизнес должен быть в контроллерах, больше нигде ... и поэтому вам не нужно знать экземпляр приложения в таких вещах, как магазины, представления или модели ...

Хорошо, но ..было бы очень хорошо иметь глобальные свойства, живущие в главном приложении.

Например, я хочу определить свой URL-адрес веб-службы глобально в Приложении и использовать эту переменную везде, где мне нужно - и, к сожалению, этот URL-адрес мне тоже нужен в магазине.

Теперь я вижу единственный способ получить доступ к этой глобальной переменной в магазине - это пройти через мое пространство имен. Вместо использования this.getApplication (). ServiceUrl я нашел только решение через пространство имен с «NameOfMyApp.app.serviceUrl» - и это не могло быть лучшим способом решить эту проблему.

Есть идеи на этот счет? Есть ли лучший, всегда работающий способ получить экземпляр приложения отовсюду? Или где мне хранить глобальные переменные, если не в приложении?

6
задан jebbie 11 September 2013 в 18:45
поделиться

0 ответов

Другие вопросы по тегам:

Похожие вопросы: