Angularjs路由不使用基本href

时间:2014-07-11 07:12:29

标签: javascript angularjs

作为示例程序,我从教程中下载this plunker以测试不同页面中的选项卡路由。我下载了完整的zip并按原样运行(例如同一目录中的文件,链接是CDN ),但它没有工作。我认为不包括角度文件,因为它显示了这个输出:

单击以下选项之一。

tab 1<br/>
tab 2

{{ path }}   //supposed to model the variable

但它在plunker中工作正常。基础href路径或版本有问题吗?我尝试将自己的文件包含在angular.min.js而不是链接中,但它仍然无法正常工作。

这里是html:

<head>
  <meta charset="utf-8" />
  <title>AngularJS Plunker</title>
  <script>
    document.write('<base href="' + document.location + '" />');
  </script>
  <link href="style.css" rel="stylesheet" />
  <script data-semver="1.2.7" src="http://code.angularjs.org/1.2.7/angular.js" data-require="angular.js@1.2.x"></script>
  <script src="http://code.angularjs.org/1.2.7/angular-route.js"></script>
  <script src="app.js"></script>
</head>

<body ng-app="plunker">
  <div ng-controller="NavCtrl">
    <p>Click one of the following choices.</p>
    <ul>
      <li ng-class="{active: isActive('/tab1')}"><a href="#/tab1">tab 1</a>
      </li>
      <li ng-class="{active: isActive('/tab2')}"><a href="#/tab2">tab 2</a>
      </li>
    </ul>
    <pre>{{ path }}</pre>
  </div>
  <div ng-view></div>
</body>

</html>

2 个答案:

答案 0 :(得分:1)

由于document.location正在向您发送Object,请尝试document.location.origin

答案 1 :(得分:0)

尝试使用ng-href="tab1"代替href="#/tab1"