angularjs 路由刷新的问题

angularjs 路由刷新的问题

angularjs 有个机制就是点击路由之后,再次点击的话不会刷新页面,需要点击另一个路由再点回来才行(或者右键刷新)。

directive 自定义指令

AngularJS 内置的指令外,我们还可以创建自定义指令。

可以使用 .directive 函数来添加自定义的指令。

要调用自定义指令,HTML 元素上需要添加自定义指令名。

function myHref($location, $route) {
  return {
    link(scope, element, attrs) {
      scope.$watch('myHref', () => {
        if (attrs.myHref) {
          element.attr('href', attrs.myHref);
          element.bind('click', () => {
            scope.$apply(() => {
              if ($location.path() === attrs.myHref) $route.reload();
            });
          });
        }
      });
    },
  };
}

export default function init(ngModule) {
  ngModule.directive('myHref', myHref);
}
<a my-href="/urls">链接</a>
# angularjs 

右下角对话与我联系。


Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×