Sencha Touch: Как, черт возьми, работает этот фреймворк? - PullRequest
9 голосов
/ 20 апреля 2011

У меня абсолютный кошмар, когда я пытаюсь создать что-то ценное с помощью Sencha Touch.Документы, кажется, описывают все по частям, не связывая все вместе ...

Одна из моих основных проблем заключается в том, что я не понимаю, как что-либо загружается в браузер ... Если я просто определяю Ext.List в index.js внутри этого метода:

Ext.setup({
    onReady: function() {

    }
})

Затем этот Ext.List по какой-то причине загружается в браузер.Если я определю несколько объектов в этом методе, как он узнает, что поместить в браузер?Кроме того, когда я расширяю Ext.List и помещаю это в вышеупомянутый метод, ничего не происходит.В чем дело?

Еще лучше, где я могу найти хорошую документацию, объясняющую, как работает эта структура?Я изучил все на сайте Sencha Touch, включая учебные пособия, и все это ужасно неполно.

Ответы [ 3 ]

9 голосов
/ 20 апреля 2011

Поначалу это кажется странным.Важно понимать, что Sencha Touch отличается от jQTouch или jQuery Mobile тем, что вы создаете свой интерфейс полностью программным способом, так как нет никакого определения пользовательского интерфейса в файле HTML или чем-то подобном.Фреймворк написан гораздо больше в традициях классического набора виджетов, например QT .Этот стиль не является тем, к которому привыкли традиционные веб-разработчики, но я бы сказал, что документация довольно полная.Он просто не написан в стиле, привычном для веб-разработчиков.

Вот как это работает: для одного компонента должен быть установлен атрибут fullscreen: true.Этот компонент становится корневым, и все остальные видимые компоненты пользовательского интерфейса добавляются в этот компонент с помощью метода .add(). Но там все определены в Javascript .Это самое важное, что нужно запомнить.

Возможно, вы уже нашли его, но основным хранилищем документации является документация API ( здесь ).Если вы собираетесь куда-то попасть, вам придется привыкать к тому, чтобы читать что-то отсюда.Важными фактами здесь является то, что все в пользовательском интерфейсе наследуется от класса Component, и что Panel, вероятно,

Когда я только начинал, я нашел эту страницу немного лучшедля начала.Я особенно рекомендую превосходные снимки экрана Дрю Нейлом на панелях.

Я думаю, что это во многом связано с тем фактом, что Sencha Touch все еще молодая библиотека, и что она имеет свои корни в высокопрограммных и не оченьцентральный Ext.js каркас.Потратив некоторое время на действительно изучение основ Ext.js, вероятно, очень поможет в долгосрочной перспективе при попытке освоить Sencha Touch (совет: Observable - самый важный класс).

Извините, вы правы, что документация не очень дружелюбная.Но пользовательский интерфейс, который вы получаете от Sencha Touch, по-прежнему вырывает конкуренцию, когда дело доходит до мобильных интерфейсов, поэтому я бы сказал, что оно того стоит, если вы действительно хотите самый привлекательный мобильный пользовательский интерфейс из всех существующих.

2 голосов
/ 21 апреля 2011

Я рекомендую вам посмотреть видео с конференции http://www.sencha.com/conference/videos, особенно "Структурирование вашего приложения Sencha Touch". Я перезапустил приложение с нуля, следуя схеме MVC, описанной в видео, через два дня я оказался там, где был раньше плюс куча исправленных ошибок, но самое главное теперь я действительно понимаю, что я делаю, и почему было так трудно заставить все работать, прежде чем использовать этот стандартный шаблон.

0 голосов
/ 08 декабря 2011

Я нашел одно из лучших мест, где можно научиться сенсорному сенсору Sencha - это серия из 4 частей по созданию простого приложения SenchaTouch1.0: - http://miamicoder.com/2011/writing-a-sencha-touch-application-part-1/ Следуйте этому примеру MVC: http://miamicoder.com/2011/writing-a-sencha-touch-mvc-application/ После завершения описанных выше учебных пособий вы сможете с комфортом и уверенностью обращаться к собственной документации, учебным пособиям и скринкастам SenchaTouch.

...