Javascript &引用;要求;Cordova/phonegap项目中的例外情况

Javascript &引用;要求;Cordova/phonegap项目中的例外情况,javascript,android,node.js,cordova,Javascript,Android,Node.js,Cordova,我正在尝试在Android平台上使用Phonegap/Cordova构建一个混合移动应用程序。我也在这方面取得了成功:)该应用程序在我的Chrome浏览器的Ripple emulator中按预期工作。我没有使用Eclipe ADT或Android Studio,因为模拟器加载速度不快 我使用onDeviceReady事件和导航器插件进行振动和警报。所有这些都像预期的那样工作良好 当开发者控制台在Chrome中处于活动状态时,JavaScript会在cordova.js中中断,并出现以下错误 Un

我正在尝试在Android平台上使用Phonegap/Cordova构建一个混合移动应用程序。我也在这方面取得了成功:)该应用程序在我的Chrome浏览器的Ripple emulator中按预期工作。我没有使用Eclipe ADT或Android Studio,因为模拟器加载速度不快

我使用onDeviceReady事件和导航器插件进行振动和警报。所有这些都像预期的那样工作良好

当开发者控制台在Chrome中处于活动状态时,JavaScript会在cordova.js中中断,并出现以下错误

Uncaught ReferenceError: require is not defined 
在下面一行。notification.js文件也是如此。当我在debugger中按continue时,除了那个错误之外,一切都会按预期工作

var cordova_events = require('./src/events'),
java脚本文件的顺序如下所示

<script src="js/cordova.js"></script>
<script src="js/notification.js"></script>               
<script src="js/vibration.js"></script> 

我相信我没有引用正确的cordova.js文件和所有其他依赖项。但我也想知道,当开发者控制台不活动时,为什么Ripple中的应用程序工作得很好

我甚至尝试删除cordova.js文件,因为Ripple会根据

我有phonegap和cordova各自网站的下载副本。我已经安装了Node.js,也安装了包

我的问题是:

  • 在哪里可以找到正确的cordova.js文件?我的html文件项目中包含的正确版本是什么
  • Node.js的用户是什么
  • 它是否设计为自动包含基于Node.js的脚本?如果是这样,我错过了什么

我承认node.js的概念和用法对我来说就像一门火箭科学

Cordova和Phonegap几乎是一样的东西,你不需要同时下载它们。Cordova是一个开源项目,帮助您将HTML5应用程序发布到多个不同的移动操作系统。Phonegap使用Cordova来实现这一点,但也添加了一些额外的功能,主要是能够在云中而不是在工作站上构建

Cordova在很多构建步骤中都使用Node.js。因为Cordova可以在OSX和Windows机器上工作,所以我们需要一种方法来编写可以在这两种操作系统上工作的构建和打包脚本——node.js提供了这一点。当您使用Cordova构建应用程序时,您根本不应该真正使用node.js,除非您还构建了一个互补的后端系统

从Cordova 3.x开始,有一个
Cordova
命令行工具可以极大地帮助您创建应用程序。它负责复制正确的cordova.js和cordova-android.jar文件。你可以在这里读到


设置好后,您可能想阅读我的另一个答案,该答案澄清了
cordova
工具的一些用例:

不要使用插件源之外的插件*.js文件。

不要将插件*.js文件作为标记添加到html中
(Cordova基于Cordova_plugins.js自行加载它们)

特定错误“require is not defined”源于plugins.js中缺少cordova define

cordova.define("org.apache.cordova.file.DirectoryEntry", function(require, exports, module) {

});
要避免所有这些麻烦,请执行以下操作:


用于设置平台和插件。它管理所有本机和javascript源文件,并以适当的方式将它们放在一起

谢谢你的回复。我有一些想法。我知道cordova和phonegap几乎是一样的。我只是下载了一个cordova.js文件来尝试它的实际工作原理。我使用CLI构建了一个新项目,并将cordova.js复制到我的非基于CLI的项目(eclipe项目)中。但我还是遇到了同样的问题。有什么方法可以通过聊天或电子邮件联系到我吗?看来你是Phonegap方面的专家。我是一名遗留大型机COBOL开发人员,在使用PHP之后开始使用此工具。:)通常,您不应该同时使用CLI和Eclipse。可以使用CLI设置项目,然后在Eclipse中执行“从现有代码新建Android项目”,并指向您的/cordovaCli/myApp/platforms/Android/文件夹。我们将此工作流(使用eclipse)称为“本机平台开发人员”。我一直在试图澄清文档中的两个工作流:希望我能在本周完成它。在工作日,我试图潜伏在#科尔多瓦和#freenode上的phonegap,你可以在那里打电话给我……什么是COBOL?;)哈哈,这是github cordova文档中的一条很棒的信息。。我在想为什么CLI项目中有2个www文件夹。。一个是root,另一个在platforms\android\assets\中。为构建应用程序,实际要编辑哪个www文件夹?为什么两者都有2个www和一些内容?看起来内容也一样..顺便说一句,我投票给cordova docs的一些法语翻译。。我的小贡献:D