Mobile Angular ng-view在PhoneGap应用程序上不起作用



我正在尝试使用我的第一个移动应用,这是使用移动角和电话盖。

现在的问题是,模板文件不会在电话上的电话盖测试应用程序上加载NG-视图中。

我知道这已经较早了:

https://stackoverflow.com/a/15648056/616341

但是我尝试添加aHrefSanitizationWhitelist(),没有帮助。

编辑:

该文件当前看起来像这样:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <meta name="apple-mobile-web-app-capable" content="yes" />
    <meta name="format-detection" content="telephone=no" />
    <meta name="msapplication-tap-highlight" content="no" />
    <meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width" />
    <!-- This is a wide open CSP declaration. To lock this down for production, see below. -->
    <meta http-equiv="Content-Security-Policy" content="default-src * 'unsafe-inline'; style-src 'self' 'unsafe-inline'; media-src *" />
    <link rel="stylesheet" href="./css/mobile-angular-ui-hover.min.css" />
    <link rel="stylesheet" href="./css/mobile-angular-ui-base.min.css" />
    <link rel="stylesheet" href="./css/mobile-angular-ui-desktop.min.css" />
    <link rel="stylesheet" type="text/css" href="./css/index.css" />
    <title>Hello World</title>
</head>
<body ng-app="myApp">
    <div class="app">
        <!-- Top Navbar -->
        <div class="navbar navbar-app navbar-absolute-top">
              <div class="btn-group justified">
                <a href="#/page1" class="btn btn-navbar">Page 1</a>
              </div>
        </div>
        <!-- Bottom Navbar -->
        <div class="navbar navbar-app navbar-absolute-bottom"></div>
        <!-- App Body -->
        <div class="app-body">
            <div class="app-content">
              <ng-view></ng-view>
            </div>
        </div>
    </div><!-- ~ .app -->
    <!-- Modals and Overlays -->
    <div ui-yield-to="modals"></div>
</body>
<!-- Libs -->
<script src="cordova.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.5.6/angular.min.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.5.6/angular-route.min.js"></script>
<script src="/js/mobile-angular-ui.min.js"></script>
<script src="/js/mobile-angular-ui.gestures.min.js"></script>
<!-- App -->
<script>
var app = {
    initialize: function()
    {
        this.bindEvents();
    },
    bindEvents: function()
    {
        document.addEventListener('deviceready', this.onDeviceReady, true);
    },
    onDeviceReady: function()
    {
        angular.element(document).ready(function()
        {
            angular.bootstrap(document, ['myApp']);
        });
    },
};

angular.module('myApp', ['ngRoute']).config(function($routeProvider)
{
    $routeProvider
    .when('/', {
        templateUrl: './views/page1.html'
    })
    .when('/page1', {
        templateUrl: './views/page1.html'
    });
});
app.initialize();
</script>
</html>

已解决!:

我自己发现了这个问题。我从测试中开始是否加载了angular。它不在手机上。这对我有很大帮助,因为我现在知道问题与路由有关,而是关于Angular没有被加载的。

解决方案是在//之前添加https:

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.6/angular.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.6/angular-route.min.js"></script>

编辑:

您也可以保持本地化:

<script src="js/angular.min.js"></script>
<script src="js/angular-route.min.js"></script>

最新更新