2016-05-07 3 views
0

Возможно ли доставлять одностраничное приложение, основанное на WordPress, с использованием изоморфных/универсальных методов JavaScript (с такими каркасами, как React и Angular2)?WordPress-ориентированное одностраничное приложение с универсальным JavaScript

+0

Для меня это похоже на эксперимент. Непонятно, какая польза от использования React здесь. Вы упомянули о производительности, но это не намного быстрее, если вообще, в зависимости от ваших узких мест. – azium

+0

Одной из основных функций, с которыми пользователи взаимодействуют друг с другом, является фильтрация/поиск/сортировка. И я хотел бы, чтобы разные страницы на сайте ведут себя как веб-приложение. По моему мнению, виртуальный DOM - и способ, которым он повторно отображает только то, что необходимо, - сделает это намного быстрее. Я здесь не прав? – jabacchetta

+0

Ускорение скорости в основном незначительно - конечно, не стоит перестраивать все приложение. Например, известно, что угловые приложения могут быть нестабильными при повторном рендеринге многих элементов одновременно, однако их легко оптимизировать с помощью нескольких строк кода (не требуется VDOM). Тем не менее, React - фантастическая технология, но производительность не должна быть вашей причиной для переключения. – azium

ответ

0

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

Универсальный/Изоморфная JavaScript

Если вы еще не знакомы с этим модным словом (из мейнстрима по статьям по Airbnb и Medium), он, по существу, относится к способности оказать JavaScript как на стороне сервера и сторона клиента.

Ловушки JavaScript MVC Frameworks

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

Однако, фреймворки первого поколения (такие как Angular and Backbone) имели один главный недостаток: их зависимость от рендеринга на стороне клиента. Этот presented a few problems:

  • Не работает вообще, если пользователь отключил JavaScript.
  • Невозможно просканировать поисковые системы (хотя Google is now making significant progress в том, как он обрабатывает JavaScript).
  • Пользователям изначально подают пустую страницу, пока они ожидают до восьми секунд (или более) для отображаемого содержимого.
  • Социальный обмен инвалидами (без предварительного просмотра).

Сегодняшнее решение

Новые каркасы/библиотеки (включая Angular2 и React) способны поддерживать серверный рендеринг в дополнение к стороне клиента визуализации (при использовании с Node.js на внутреннем интерфейсе) ,

Идея состоит в том, что вы сначала загружаете контент через сервер, а затем передаете маршрут клиенту. Этот метод дает вам лучшее из обоих миров - удобное для поиска приложение, которое загружается мгновенно и не требует перезагрузки страницы.

Эволюция WordPress

WordPress is now moving towards becoming a fully-fledged application framework и находится в процессе добавления WP REST API для WordPress Core. Это (в сочетании с упомянутыми выше технологиями) дает нам возможность создавать действительно универсальные приложения при использовании WordPress для обслуживания наших данных. И на самом деле, это именно то, что делают WordPress и others.

Смежные вопросы