Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 10.01.2017, 19:11
Аватар для Infarch
Профессор
Отправить личное сообщение для Infarch Посмотреть профиль Найти все сообщения от Infarch
 
Регистрация: 06.06.2014
Сообщений: 292

Application.requires
Здравствуйте.

У меня вот такой теоретический вопрос: а что надо описывать в секции requires моего Application?
Опытным путем нашел что там надо вписать все то что должно быть найдено по алиасу. Может есть еще какие-нибудь рекомендации, общие правила, best practices?
Есть ли смысл описывать виджеты в views и сторы в stores, если я не нуждаюсь в геттерах для них? Кто как делает?
Ответить с цитированием
  #2 (permalink)  
Старый 11.01.2017, 08:46
Аспирант
Отправить личное сообщение для XAPuTOH Посмотреть профиль Найти все сообщения от XAPuTOH
 
Регистрация: 17.12.2012
Сообщений: 63

У меня обычно там все мои компоненты:

Admin.*

сторы описанные в этом разделе помоему подгружаются сразу. Соответственно там можно загрузить какой нибудь общий стор.
Ответить с цитированием
  #3 (permalink)  
Старый 11.01.2017, 11:02
Аватар для Infarch
Профессор
Отправить личное сообщение для Infarch Посмотреть профиль Найти все сообщения от Infarch
 
Регистрация: 06.06.2014
Сообщений: 292

А со сторами там вообще очень интересно. Я добавил вывод в консоль в конструкторе стора. Стор имеет прописанную storeId. Я вижу вывод - конструктор был вызван. Он вызывается даже если storeId нет. А вот сторменеждер такого стора не знает! Надо его явно создать через Ext.create, тогда будет доступен. Странно...
Ответить с цитированием
  #4 (permalink)  
Старый 12.01.2017, 21:55
Аватар для nohuhu
Профессор
Отправить личное сообщение для nohuhu Посмотреть профиль Найти все сообщения от nohuhu
 
Регистрация: 21.05.2015
Сообщений: 321

Сообщение от Infarch Посмотреть сообщение
У меня вот такой теоретический вопрос: а что надо описывать в секции requires моего Application?
Самые верхние View, глобальные Controllers и Stores. Остальное должно само подтянуться.
Ответить с цитированием
  #5 (permalink)  
Старый 13.01.2017, 03:44
Аватар для Sogl
Аспирант
Отправить личное сообщение для Sogl Посмотреть профиль Найти все сообщения от Sogl
 
Регистрация: 12.05.2016
Сообщений: 95

Да, интересный момент. В демо-приложениях от Sencha тоже частенько вижу вот это:
Admin.*


Тем не менее, когда писал Fiddle этот:
https://fiddle.sencha.com/#fiddle/1mls

И попробовал вписать Fiddle.* в app.js, чтобы не заморачиваться с зависимостями, то получил такую ошибку:
Uncaught TypeError: Cannot read property 'prototype' of undefined
    at constructor.applyMainView (ext-all-debug.js:95344)
    at constructor.setter [as setMainView] (ext-all-debug.js:10542)
    at constructor.<anonymous> (ext-all-debug.js:10521)
    at constructor.initMainView (ext-all-debug.js:95129)
    at constructor.onBeforeLaunch (ext-all-debug.js:95085)
    at constructor.callParent (ext-all-debug.js:12490)
    at constructor.onBeforeLaunch (ext-all-debug.js:95383)
    at constructor.onProfilesReady (ext-all-debug.js:95019)
    at new constructor (ext-all-debug.js:94988)
    at constructor [as self] (ext-all-debug.js:13133)

Можете раскомментить и глянуть сами.

Я не знаю, связано ли это с реализацией Sencha Fiddle или что-то я пропустил, но в своем приложении на ExtJS 6.2 я также вписываю все вручную, ориентируясь на warning'и в консоли и здравый смысл.
Ответить с цитированием
  #6 (permalink)  
Старый 13.01.2017, 22:22
Аватар для nohuhu
Профессор
Отправить личное сообщение для nohuhu Посмотреть профиль Найти все сообщения от nohuhu
 
Регистрация: 21.05.2015
Сообщений: 321

Сообщение от Sogl Посмотреть сообщение
И попробовал вписать Fiddle.* в app.js, чтобы не заморачиваться с зависимостями, то получил такую ошибку:
Fiddle использует динамическую загрузку, которая не парсит код и не может определить зависимости без requires. Cmd парсит и, соответственно, может.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск