У меня есть компонент navbar, который я разместил в application.hbs, чтобы он всегда был видимым. Но я хочу изменить заголовок навигационной панели на каждой странице, которую я посещаю (скажем, я на индексной странице должен сказать «Домой», если я на странице профиля, он должен сказать профиль и т. д.). Теперь все, что происходит, это название навигация всегда остается «Домой» для всей страницы. Это происходит потому, что navbar получает отображаемый onlu во время загрузки страницы в браузере, и после этого он не изменяется в соответствии со страницей.Невозможно сделать элементы навигационной панели динамическими в ember
application.hbs
{{top-navbar dp_url=model.profile.dp_url first_name=model.profile.first_name title=title}}
{{outlet}}
Здесь я вычисление значения заголовка в зависимости от того, на какую страницу пользователя.
application.js (контроллер)
if (currentPage === "" || currentPage === "#"){
currentState.set('title',"Home")
}
else if(currentPage === "Userprofile"){
console.log('myStudio');
currentState.set('title',"UserProfile");
}
здесь в currentpage
имеет текущий URL из приложения и я сравниваю его и решить, значение заголовка для навигационной панели.
Но значение титула top-navbar вычисляется только в первый раз, когда пользователь загружает приложение в браузере, а не когда я перемещаюсь из одного маршрута в другой.
Я также пробовал Ember.Evented
, но не смог его решить.