Phonegap中的require-2.1.1.min.js脚本错误

时间:2013-08-06 14:00:01

标签: android eclipse cordova

我正在尝试构建一个使用Phonegap构建的应用。当我尝试在我的Android虚拟设备中模拟应用时,由于以下错误,该应用无法加载...

enter image description here

Uncaught Error: Script error
http://requirejs.org/docs/errors.html#scripterror at file:///android_asset/www/js/lib/require/require-2.1.1.min.js:31

同一个项目完全适合iOS ...

控制台关闭并显示以下消息: File is Out of sync

有谁知道如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

Phonegap和require.js在天堂并不是真正的匹配,它也给我的项目带来了很多问题。

要解决此问题,您可以使用requireJS optimizer优化您的javascript文件。通过这种方式,所有的javascript都被编译(并且可选地缩小)到一个文件中。

要开始使用,请安装它(如果您正在使用节点):npm install -g requirejs

您可以通过build-config.js文件告诉优化器要优化哪些文件,如下所示:

({
    baseUrl: ".",
    dir: "../js-built",
    paths: {
        jquery: "some/other/jquery";
        // all the other paths to your modules
    },
    out: "main-built.js"
})

您可以通过引用main.js配置文件(其中包含您正在使用的所有模块的路径列表)来更轻松地列出此build-config文件中的所有路径,而不是列出此build-config文件中的所有路径。只需使用build-config.js文件中的下一个选项:

mainConfigFile: '..js/main.js',

要禁用缩小,可以将下一个选项传递给配置,使调试更容易:

optimze: "none"

您可以在此处找到包含所有选项的example-build-config-file:example.build.js

最后,要优化所有内容,请将构建文件的文件名传递给优化程序:

node r.js -o build-config.js

在您的头部包含新近优化的main-built.js

<script src="js/lib/require/require.js" type="text/javascript"></script>
<script src="js-built/main-built.js" type="text/javascript"></script>

你已经完成了。