En En

Указание типа URL


Роутер Ember имеет четыре опции для управления адресами URL приложения: history, которая использует HTML5 History API; hash, которая использует URL с анкорами; auto, которая использует history, если есть поддержка в браузере пользователя, либо обращается к hash; и none, которая не обновляет URL. По умолчанию, Ember CLI настраивает роутер на использование auto. Вы можете изменить эту опцию в config/environment.js под ENV.locationType.

history

При использовании history, Ember применяет history API браузера, чтобы производить URL со структурой вроде /posts/new.

Учитывая следующий роутер, ввод /posts/new приведет вас к маршруту posts.new.

app/router.js

Router.map(function() {
  this.route('posts', function() {
    this.route('new');
  });
});

Помните, что ваш сервер должен обслуживать приложение Ember со всех адресов URL, определенных в функции Router.map. Другими словами, если пользователь прямо перейдет в /posts/new, ваш сервер должен быть настроен, чтобы в ответ обслуживать приложение Ember.

hash

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

В примере роутера выше, ввод /#/posts/new переведет вас на маршрут posts.new.

none

Наконец, если не хотите, чтобы URL браузера взаимодействовал с вашим приложением, вы можете полностью отключить location API, установив ENV.locationType на none. Это полезно для тестирования, или когда вы не хотите, чтобы Ember захламлялся адресами URL (например, когда вы встраиваете ваше приложение на большую страницу).


Комментарии (0)

    Выделите опечатку и нажмите Ctrl + Enter, чтобы отправить сообщение об ошибке.