AngularJS路由添加了任何特殊字符
AngularJS routes add any special characters?
问题是:当我只是键入http://localhost:53379我被重定向到http://localhost:53379/#/。/#/从哪里来?
angular
.module('app', ['ngRoute', 'ngStorage'])
.config(['$routeProvider', function ($routeProvider) {
debugger;
$routeProvider.when('/:module/:task/:id/:menu/:action', { templateUrl: 'app/blank.html', controller: PagesCtrl });
$routeProvider.when('/:module/:task/:id/:menu', { templateUrl: 'app/blank.html', controller: PagesCtrl });
$routeProvider.when('/:module/:task/:id', { templateUrl: 'app/blank.html', controller: PagesCtrl });
$routeProvider.when('/:module/:task', { templateUrl: 'app/blank.html', controller: PagesCtrl });
$routeProvider.when('/:module', { templateUrl: 'app/blank.html', controller: PagesCtrl });
$routeProvider.when('/', { templateUrl: 'app/start.html' });
$routeProvider.otherwise({ redirectTo: '/' });
}
]);
默认情况下,AngularJS将使用标签路由URL。
例如:
http://domain.com/#/home
http://domain.com/#/about
通过在config:中将html5Mode设置为true,您可以很容易地从URL中删除标签
$locationProvider.html5Mode(true);
因此,在您的代码中,它将是:
angular.module('app', ['ngRoute', 'ngStorage'])
.config(['$routeProvider', '$locationProvider', function ($routeProvider, $locationProvider) {
debugger;
$routeProvider.when('/:module/:task/:id/:menu/:action', { templateUrl: 'app/blank.html', controller: PagesCtrl });
$routeProvider.when('/:module/:task/:id/:menu', { templateUrl: 'app/blank.html', controller: PagesCtrl });
$routeProvider.when('/:module/:task/:id', { templateUrl: 'app/blank.html', controller: PagesCtrl });
$routeProvider.when('/:module/:task', { templateUrl: 'app/blank.html', controller: PagesCtrl });
$routeProvider.when('/:module', { templateUrl: 'app/blank.html', controller: PagesCtrl });
$routeProvider.when('/', { templateUrl: 'app/start.html' });
$routeProvider.otherwise({ redirectTo: '/' });
$locationProvider.html5Mode(true);
}
]);
在那之后,如果你正在进行"单页应用程序">
#
默认设置为按角度路由,除非您在配置中设置了以下历史api pushstate:
$locationProvider.html5Mode(true);
基本上angular默认使用hashchange进行路由。
相关文章:
- javascript替换换行符和特殊字符
- angularjs删除动态形式元素中的特殊字符
- 使用json_encode通过xmlhttp.responseText发送特殊字符(即caron)
- 在搜索中考虑特殊字符的
- 避免键入一些特殊字符
- jQuery-Regex以防止任何特殊字符
- RegEx只获取特殊字符,前后不获取任何字符
- 通过分离除“”之外的任何特殊字符来获得所有列表框值"通过jquery
- Javascript 正则表达式:匹配除允许的特殊字符之外的任何非单词
- 验证输入是否仅包含特殊字符而不包含任何数字
- 如何使下面的正则表达式接受任何特殊字符
- Javascript Regex可以删除任何空格、特殊字符和数字
- 如何从angular js中具有特殊字符#的路由中获取任何参数值
- 反转字符串而不影响任何特殊字符
- Javascript Regex替换"="“= =”;没有任何特殊字符
- JavaScript正则表达式密码包含至少6个字符,1个数字,1个字母,任何特殊字符
- 输入文本框应该包含$和£货币符号和警告,如果用户输入任何其他特殊字符
- 使用Regex防止特定的特殊字符出现在字符串中的任何位置
- 如何传递字符串与/或任何其他特殊字符使用javascript
- AngularJS路由添加了任何特殊字符