3

我们正在使用带有 AngularJs 的 Cordova/Phonegap 并尝试使用路由;路由不起作用,它没有改变视图,并且在控制台中出现以下错误:

无法加载网页并出现错误:在此服务器上找不到请求的 URL。

我们的路由控制器是:

var app = angular
.module('myApp', [])
.config(function ($routeProvider, $compileProvider) {

    $routeProvider.when('/', {
        templateUrl: 'index.html'
    }).when('/HomeScreen/:id', {
        templateUrl: 'app/views/homeScreen.html'
    }).otherwise({
        redirectTo: '/'
    });

    $compileProvider.urlSanitizationWhitelist(/^\s*(https?|ftp|mailto|file|tel):/);
});

当我们更改.otherwise({ redirectTo: '/HomeScreen/1'})它时,它会起作用,但是 index.html 中具有相同href(/HomeScreen/1) 的锚点不起作用。

我们尝试了 Html5 模式和 hashbang 模式,但都没有工作。

我们正在使用 angularjs 版本 1.0.7。

4

1 回答 1

0

最有可能的问题是 #/ 让一些浏览器感到困惑。这可能会有所帮助:

$locationProvider.html5Mode(true);

这将使用推送状态来代替导航。

于 2013-08-26T21:26:31.657 回答