Phonegap www文件夹和优化问题

时间:2014-08-07 08:03:48

标签: cordova phonegap-build

我正在开展一个phonegap项目,我有很多css,js文件。我已将这些css,js文件放在css文件夹下的jswww子目录中。我计划使用require js优化工具来连接和缩小css和js文件。缩小的js和css文件放在dist下名为www的单独文件夹中。

MyPhonegapProject
       |
       |__ www 
            |
            |__ css (contains unminified css files)
            |__ js  (contains unminifies js files)
            |__ dist (contains minified js and css files)
            |__ index.html (references minified js and css files from the dist folder)     

现在关于踢取phonegap构建的问题是否会复制www文件夹中的所有内容?我不希望将未经过编辑的js和css文件复制到build文件夹中。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

您可以在src目录中创建和工作,并在开始构建之前将所需的(dist)文件复制到www目录。

我建议使用像Grunt这样的任务运行程序http://gruntjs.com为您自动执行此操作。

这是一个示例Gruntfile.js我把它们放在一起,你可以用作模板。它会清除www目录,将所有文件从src复制到www,从www中删除未分解的文件,然后启动cordova build cli命令:< / p>

module.exports = function (grunt) {
    grunt.initConfig({
        pkg: grunt.file.readJSON("package.json"),
        shell: {
            build: {
                // Run the cordova build command
                command: "cordova build"
            }
        },
        copy: {
            main: {
                // Copy all files from src to www
                src: ["**/*"],
                dest: "www/",
                expand: true,
                cwd: "src/"
            }
        },
        clean: {
            www: {
                // Remove all files currenty in the www dir
                src: ["www"]
            },
            js: {
                // Remove unminified js etc
                src: ["www/js/*.js"]
            }
        }
    });

    grunt.loadNpmTasks("grunt-contrib-copy");
    grunt.loadNpmTasks("grunt-contrib-clean");
    grunt.loadNpmTasks("grunt-shell");

    grunt.registerTask("build", ["clean:www", "copy", "clean:js", "shell"]);
};

您可以添加工作流程所需的任何其他内容。