Как вы реализуете Store для одноэлементного?Singletons Ext JS (4.2.1) и магазины
В Architect мой магазин имеет свойство флажок, который добавляет свойство
singleton: true,
Если добавить, что затем перезагрузить приложение он не загружается (я могу дать более подробную информацию, если требуется об ошибке)
Uncaught TypeError: object is not a function VM5238:3
(anonymous function) VM5238:3
Ext.ClassManager.instantiate ext-all-debug.js:5485
(anonymous function) ext-all-debug.js:2109
Ext.define.getStore
Если я удалю это свойство, оно загрузится нормально, но где я использую Ext.getStore («MyStore»), то возвращаемые магазины содержат разные данные в зависимости от того, где я использую хранилище. У меня есть один контроллер, где я использую имя класса внутри метода getStore, и это используется в нескольких функциях внутри одного контроллера.
Также не существует документации о свойстве singleton в документах. Если я посмотрю на Ext.data.Store, то нет синглтона.
Звучит неплохо. каков наилучший способ создания магазина в первом случае. Я читал (на сайте sencha), что лучше оставить id для создания и вместо этого использовать itemId. Когда я использовал Ext.getStore, он создавал для меня магазин. – delp
@delp Если вы используете ExtJS MVC, вам ничего не нужно делать. Болезнь будет загружена и создана контроллером, а storeId будет идентифицирующим именем класса магазина. AFAIK 'App.store.StoreName' должно быть «StoreName», а «App.store.soreStameName» должно быть «sub.StoreName». Если вы не используете MVC, сделайте это как в моем примере – sra
Да, вы правы. Он (при использовании контроллера) автоматически создает хранилище, а когда он игнорирует значение storeId, которое вы устанавливаете для него, и делает storeId таким же, как имя класса. спасибо. – delp