2017-03-14 60 views
0

我想为使用科尔多瓦的android构建一个AngularJS待办事项列表应用程序。如果我在浏览器中打开页面,页面加载正常,但我无法获取任何脚本在模拟器中运行,除了我放入全局范围的alert()。这里是我的index.html页面代码....科尔多瓦JavaScript无法在模拟器上工作

<html> 
    <head> 

     <meta http-equiv="Content-Security-Policy" content="default-src *; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval'"/> 
     <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"> 
     <link rel="manifest" href="/manifest.json"> 
     <link rel="stylesheet" type="text/css" href="css/index.css"> 

     <title>To-do list</title> 
    </head> 
    <body> 
     <div class="app" ng-controller="ToDoListController"> 
      <h1>Things to do.</h1> 
      <ul> 
       <li ng-repeat="item in list" ng-bind="item"></li> 
      </ul> 


     </div> 
     <script type="text/javascript" src="../node_modules/jquery/dist/jquery.min.js"></script> 
     <script type="text/javascript" src="../node_modules/angular/angular.min.js"></script> 
     <script type="text/javascript" src="../platforms/android/platform_www/cordova.js"></script> 
     <script type="text/javascript" src="js/index.js"></script> 
    </body> 
</html> 

而对于index.js页:

$(document).ready(function(){ 
    document.addEventListener('deviceready', function(){ 

    }); 
    angular.module('ToDo',[]) 
     .controller('ToDoListController',['$scope',function($scope){ 
      $scope.list = ["FOO","BAR"]; 
     }]); 
    angular.bootstrap(document,['ToDo']); 
    $('ul').append('<li>Item appended</li>'); 
}); 

正如我说,如果我在全球把警报()部分如果index.js,它会触发,但没有别的会。无论是在$(document).ready()还是在它之外,angular bootsrap和jquery append函数都不会执行。在浏览器中一切正常。任何帮助表示赞赏。

+0

你需要的一切你要采购是本地到你的'www'目录。 'node_modules'中的文件不会被复制,并且在您的应用程序中将丢失。因此,你的问题的一部分。 另一个问题是,你应该永远只能源''使用SRC =“cordova.js”'cordova.js';在构建应用程序时将提供相应的文件。 –

+0

这样做。非常感谢你! – lpuccio

回答

0

通过凯里Shotts,在上面评论:

你需要的一切你要采购是本地到你的www目录。您的node_modules中的文件不会被复制,并且在您的应用中将会丢失。因此,你的问题的一部分。另一个问题是你应该只使用src =“cordova.js”来源代码cordova.js;在构建应用程序时将提供相应的文件。

这个工作。谢谢!

相关问题