AngularJS路由页面刷新从不加载

AngularJS路由页面刷新从不加载,angularjs,angularjs-routing,Angularjs,Angularjs Routing,我正试图在salesforce本地混合android应用程序中使用AngularJS,虽然AngularJS代码的简单测试在firefox中有效,但当我在android仿真器中运行AngularJS时,它会加载几秒钟,并被一个空白屏幕所取代 我注意到,在路由之后刷新页面(在第一次页面加载之后转到[URL]/index.html#/)会以一个永久的“ajax加载”微调器结束。我怀疑这可能是我问题的根源。我的路由代码如下所示: var contactlistModule = angular.modu

我正试图在salesforce本地混合android应用程序中使用AngularJS,虽然AngularJS代码的简单测试在firefox中有效,但当我在android仿真器中运行AngularJS时,它会加载几秒钟,并被一个空白屏幕所取代

我注意到,在路由之后刷新页面(在第一次页面加载之后转到
[URL]/index.html#/
)会以一个永久的“ajax加载”微调器结束。我怀疑这可能是我问题的根源。我的路由代码如下所示:

var contactlistModule = angular.module("AugmentedContactList", ['ngRoute']);

contactlistModule.controller(ContactlistController);

contactlistModule.config(['$routeProvider', function($routeProvider) {
    $routeProvider.when('/', {
        controller: 'ContactlistController',
        templateUrl: 'viewparts/contactlistview.html'
    }).when('/contact', {
        controller: 'ContactController',
        templateUrl: 'viewparts/contact.html'
    }).otherwise({
        redirectTo: '/'
    });
}]);

为什么会发生此刷新错误?进入
index.html
不应该与
index.html#/
具有相同的效果吗?

我想,如果不启用
HTML5模式,进入
index.html
将无法像您预期的那样工作

您可以通过注入
$locationProvider
并将此行添加到配置中来启用它:

$locationProvider.html5Mode(true)

但是,请注意,要启用html5模式,您需要将服务器配置为在每个URL请求上返回
index.html
(或任何您的主页)

另见:


它应该是index.html/#