Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 带有RequireJS路由的AngularJS删除散列_Javascript_Angularjs_Routes_Requirejs_Http Status Code 404 - Fatal编程技术网

Javascript 带有RequireJS路由的AngularJS删除散列

Javascript 带有RequireJS路由的AngularJS删除散列,javascript,angularjs,routes,requirejs,http-status-code-404,Javascript,Angularjs,Routes,Requirejs,Http Status Code 404,我使用角度布线来确定要向用户显示的视图,如下所示: define(['angular', './app'], function(angular, app) { 'use strict'; return angular.module('app', ['ngRoute']). config(function($routeProvider, $locationProvider) { $routeProvider .when('/', {

我使用角度布线来确定要向用户显示的视图,如下所示:

define(['angular', './app'], function(angular, app) {
    'use strict';
    return angular.module('app', ['ngRoute']).
    config(function($routeProvider, $locationProvider) {
        $routeProvider
            .when('/', {
                templateUrl:'assets/partials/partial1.html',
                controller: 'MyCtrl1'
            }).when('/mada', {
                templateUrl:'assets/partials/partial2.html',
                controller: 'MyCtrl2'
            })
            .otherwise({redirectTo: '/'});

    });

});
目前,路由可以工作,但只能像这样:localhost/#/mada或localhost/#/ 我希望能够看到localhost/mada

我知道

$locationProvider.html5Mode(true);
$locationProvider.html5Mode(true);
我会把杂烩去掉。但这仍然不能让用户转到:localhost/mada,因为它返回一个服务器404


这能实现吗?如何操作?

如果您没有使用服务器端语言,请将此代码放在html头部

<base href="/">
如果您使用的是服务器端语言,请使用以下代码:

app.get('*', function(req, res) {
    res.render('index');
});
而不是

app.get('/', function(req, res) {
    res.render('index');
});
并将此代码放入配置块:

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