javascript - AngularJS 路由和 jQuery 冲突

标签 javascript jquery angularjs url-routing

大家。有其他人在使用 AngularJS 路由到新 View 时遇到 jQuery 控制台错误吗?

错误的示例是

未捕获错误:语法错误,无法识别的表达式:#/projects/project-id

一切仍然有效,但是每当单击与我的 Angular 路由相关的链接时,就会引发该错误。该错误显示归因于 jQuery,因此我认为这是一个问题,因为它不喜欢以“#/”开头的链接

HTML

<div class="project" ng-repeat="project in projects">
    <a href="#/projects/{{project.id}}">
        <h4>{{ project.name }}</h4>
        <p>{{ project.subtitle }}</p>
    </a>
</div>

JS

app.config(function ($routeProvider) {
     $routeProvider
     .when('/', {
         controller: "HomeController",
         templateUrl: "js/angular/views/home-view.html"
     })
     .when('/projects/:projectId', {
         controller: 'ProjectController',
         templateUrl: 'js/angular/views/project-view.html',
     })
     .otherwise({
         redirectTo: '/'
     });
});

控制台错误并不是一个严重的问题,因为就像我说的,一切仍然有效。但如果有人以前遇到过这个问题并解决了,我将非常感激。

最佳答案

将 $locationProvider 设置为在 HTML5 模式下工作。参见这里:https://docs.angularjs.org/api/ng/provider/ $locationProvider

如何使用它的示例如下:

app.config(function ($locationProvider) {
  // use the HTML5 History API
  $locationProvider.html5Mode({
    enabled: true,
    requireBase: false
  });
});

关于javascript - AngularJS 路由和 jQuery 冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31508579/

相关文章:

javascript - 显示前十个字符,点击(或悬停)展开

javascript - fabric.js - toDataURL 在 Canvas 上有图像时显示空白页

javascript - 用于加载的 Angular 绑定(bind)不会更新 HTML

javascript - IndexedDB中如何一一获取

javascript - 使用 JSON.parse 时获取 'Uncaught SyntaxError: Unexpected token o in <unknown file>:1'

javascript - 使用 AJAX/jQuery 异步下载文件

javascript - 输入上的 keyup 事件不起作用

jquery - 使用 JQuery,如何根据另一个元素的名称选择一个元素?

javascript - AngularJS - Uncaught ReferenceError : a is not defined

javascript - AngularJS 重新加载按钮?