`SyntaxError:意外的标记<`

时间:2014-01-16 14:59:01

标签: javascript angularjs

获取此错误

SyntaxError: Unexpected token <

每当我们添加

$locationProvider.html5Mode(true);

出于某种原因,它似乎开始将资源解析为JS

// App configuration
app.config(['$routeProvider', '$locationProvider',
  function($routeProvider, $locationProvider) {

    $routeProvider.when('/', {
        templateUrl: 'partials/home.html'
    });

    $locationProvider.html5Mode(true);
  }]
);

2 个答案:

答案 0 :(得分:1)

修复我建议你检查你的服务器端代码,你需要在任何其他路由之前声明你需要添加所有静态文件。

还要确保为静态文件添加的路径是正确的。

答案 1 :(得分:1)

我曾经遇到过这个问题。原因是在脚本文件的源路径(src)的开头缺少斜杠(&#34; /&#34;)。在index.html中,脚本资源必须与此类似(请注意每个路径中的起始斜杠):

<script type="text/javascript" src="/js/angular.js"></script>
<script type="text/javascript" src="/js/angular-route.js"></script>
<script type="text/javascript" src="/js/app.js"></script>

在索引文件中,还需要将其放在head部分:

<base href="/" />

在app.config部分,每个templateUrl必须以斜杠开头(&#34; /&#34;)

如果您在localhost中进行测试(我使用XAMPP进行测试),则还需要创建虚拟主机。