首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Angular应用迁移问题hash to bang hash (/#/ to /!#/)

Angular应用迁移问题hash to bang hash (/#/ to /!#/)
EN

Stack Overflow用户
提问于 2016-12-21 12:26:01
回答 1查看 115关注 0票数 1

这是我一直有的一个奇怪的问题。我把我在本地构建的一个应用程序移到了cloud9上,这样我就可以通过浏览器在线完成所有的开发工作。我不认为这是当地人搬到cloud9的原因。我有一个想法,那就是我遗漏了更多的东西,或者有过时的依赖。我不知道是否有一种方法可以检查这是否是问题所在。我并不是angular方面的专家。下面是我的依赖项package.json文件。

代码语言:javascript
复制
    {
  "name": "mean-app",
  "version": "1.0.0",
  "description": "MEAN stack application",
  "main": "app.js",
  "scripts": {
    "start": "node app.js",
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "repository": {
    "type": "git",
    "url": ""
  },
  "keywords": [
    "mean"
  ],
  "author": "",
  "license": "ISC",
  "bugs": {
    "url": ""
  },
  "homepage": "",
  "dependencies": {
    "angular": "^1.6.0",
    "angular-jwt": "^0.1.8",
    "angular-route": "^1.6.0",
    "bcrypt-nodejs": "0.0.3",
    "bluebird": "^3.4.6",
    "body-parser": "^1.15.2",
    "express": "^4.14.0",
    "jsonwebtoken": "^7.2.1",
    "mongodb": "^2.2.16",
    "mongoose": "^4.7.3",
    "purecss": "^0.6.1",
    "twilio": "^2.11.1"
  },
  "devDependencies": {
    "mocha": "^2.3.3"
  }
}

我不确定为什么在我重新加载这个文件并将我的其他文件移动到新的cloud9开发环境之后,我现在有了/#!/。

如果有人能指导我如何让/#/恢复正常,因为它扰乱了我的路由。现在我的链接都没有加载了。

提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2016-12-21 12:34:00

您是否在将代码部署到云的同时升级了Angular的版本?在从Angular 1.5.x到1.6.x的$locationProvider中似乎有一个breaking change

位置提供商的默认前缀是bang的Angular 1.6.0 specifies。你可以通过在你的应用的配置函数中注入$locationProvider,然后调用$locationProvider.hashPrefix(“”)来改变这一点;

这里有一支钢笔和一个例子:http://codepen.io/mac5977/pen/aBMGGm?editors=1011

JS

代码语言:javascript
复制
(function(){
      'use strict';
       angular.module('app', ['ngRoute'])
          .config(configFxn);
       configFxn.$inject = ['$routeProvider', '$locationProvider'];
     function configFxn($routeProvider, $locationProvider){
       $locationProvider.hashPrefix("");

       $routeProvider.when('/', {
       template: '<h3>/Route</h3><br/><a ng-href="#/secondpage">Switch Route</a>'} )
          .when('/secondpage', {
          template: '<h3>/SecondPage Route</h3><br/><a ng-href="#/">Goto Other Route</a>'} );
  }
})();

HTML

代码语言:javascript
复制
<div ng-app="app">
    <ng-view></ng-view>
</div>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41255088

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档