2013-03-19 1 views
1

Я хотел бы иметь возможность поймать любую ссылку на моем сайте, которая начинается с «/ @» и обрабатывать с полной перезагрузкой браузера.angularjs: лучший способ заставить определенные пути ссылок перезагрузить

Что-то вроде:

$locationProvider.html5Mode(true) 
$routeProvider.when("/@:id", 
    # window.location.href = [the link's url] 
    # all others are handled by typical controller/view 

Я был в состоянии решить эту проблему, используя атрибут/директиву на якорной тег, но я хотел бы сделать это на уровне URL маршрутизации.

+0

Это не совсем ответ на ваш вопрос, но вы можете добавить 'TARGET = «_ я» 'к вашим ссылкам, как предложено в http://stackoverflow.com/a/19257277/2248275 –

ответ

0

Я не уверен, если это лучшее решение, но вы можете установить параметр на основе текущего времени вместо кода «/» @

например

<a href="/Customer/Edit/{{customer.id}}&refresh={{now}}">{{customer.Name}}</a> 

где 'теперь' устанавливается на $ rootScope после каждого $ routeChangeSuccess

$rootScope.$on('$routeChangeSuccess', function (event, current, previous) { 
$rootScope.now = Date.now(); 
}); 

Это может быть улучшен, но это работает.

Вы также можете взглянуть на angularjs - refresh when clicked on link with actual url