Ионные рамки против Famo.us

В чем разница между Ionic Framework и Famo.us Framework. Можно использовать оба фреймворка в одном проекте. Какие из них поддерживают плавную визуализацию графики на мобильных устройствах?

Оба фреймворка поддерживают AngularJs?

2 ответа

Решение

Обе платформы работают с AngularJS, но они идут в другом направлении и имеют разные цели.

ионный

Он построен на основе AngularJS и расширяет его, предоставляя вам кнопки, сетки и другие готовые элементы пользовательского интерфейса, которые помогут вам быстро опубликовать ваше мобильное приложение. AngularJS фокусируется на связывании данных и структуре MVC вашего приложения и на самом деле не заботится о том, запущено ли оно в настольном браузере или на мобильном устройстве. Ionic концентрируется на представлении данных вашего приложения и расширяет AngularJS, чтобы сделать его пригодным для использования на мобильных устройствах и предоставить вам шаблоны проектирования, которые ожидают мобильные пользователи. Поскольку Ionic находится на вершине AngularJS, у вас не может быть Ionic без Angular.

Проверьте компоненты Ionic, чтобы получить лучшее понимание.

Известный

с другой стороны, стремится к максимальной производительности рендеринга. Так уж получилось, что вы можете поместить обычный HTML-код в поверхность Famo.us, которая является контейнером, который содержит отображаемый контент. Этот контент может быть HTML, но не обязательно.

Сам Famo.us не использует стандартную перекомпоновку HTML для позиционирования своих поверхностей в области просмотра, но имеет собственную реализацию дерева рендеринга, так что вы можете свободно управлять позицией и поворотом поверхности, даже в трехмерном пространстве, с бесперебойной производительностью, С другой стороны, HTML, который помещается внутри поверхности, использует reflows для размещения своих элементов так же, как вы привыкли. Узнайте больше о дереве рендеринга.

Famo.us может выводить в HTML, но также может выполнять рендеринг с использованием WebGL или даже смешанного режима, комбинируя DOM с WebGL. Это учитывает причудливые графические эффекты, которые не были бы вполне возможны с простым CSS. Также есть тесная интеграция с Easing и Physics, чтобы обеспечить игривую и реалистичную анимацию.

Теперь, когда есть Famo.us/Angular, я не понимаю, почему вы не можете использовать Ionic и Famo.us в одном приложении, хотя я еще не пробовал.

Резюме

Ионные палки с обычным DOM для рендеринга и фокусируются на мобильных дизайн / UX-паттернах. Famo.us игнорирует DOM и позволяет вам (читай: требует от вас) создавать / заполнять дерево рендеринга, предоставляет физику и позволяет создавать более сложные и плавные анимации. Это также означает, что использование Famo.us идет с кривой обучения. Хорошая вещь: вам не нужно идти "все в ряд", так как вы можете создать определенные представления своего приложения с помощью Famo.us, а затем использовать обычный HTML/CSS для всего остального.

Ионные списки хорошо работают, когда знаменитые загружаются в тот же index.html SPA.

Некоторые вещи, такие как касание и панорамирование в angular-google-maps, перестают работать, когда ionic и famo.us используют одну и ту же страницу. Переходы из ионного состояния с вкладками в детальный вид с использованием анимированной панели навигации тоже плохо.

Поэтому я рекомендую вам отделить вещи, просто переключая ваше приложение с known.html на ionic.html по мере необходимости. каждая реализация имеет свой собственный стек зависимостей и свои собственные отдельные стили, которые входят в примеры приложений.

вы можете перейти с помощью document.location.href

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

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