2016-08-03 75 views
0

为了让Grunt正确定位文件,为什么必须删除源文件路径中的前导斜杠? grunt文件位于主项目中,并且包含JS文件的“includes”文件夹。Grunt源文件相对路径

module.exports = function(grunt) { 

    var SiteMasterHeaderArray = [ 
     "/includes/js/knockout/knockout-3.4.0.js", 
     "/includes/js/common/common.js" 
    ]; 

    grunt.initConfig({ 
     pkg: grunt.file.readJSON('package.json'), 

     uglify: { 
      dest: { 
       files: { 
        'dest/SiteMasterHeader.js': SiteMasterHeaderArray 
       } 
      } 
     } 
    }); 

    grunt.loadNpmTasks('grunt-contrib-uglify'); 

    grunt.registerTask('default', ['uglify']); 
}; 

目标文件不会因“/”中的文件路径写入,因为(至少它似乎这样对我)说咕噜正在寻找一些其他位置的这些文件。删除斜线和功能完美。

+0

如果文件路径以'/'开始,那么它是绝对路径。 http://www.linuxnix.com/abslute-path-vs-relative-path-in-linuxunix/ –

+0

完美,解释它。谢谢! – danparm

回答

0

领先的/意味着它是一个绝对路径,它正在从根目录开始寻找它。没有这一点,它正在寻找相对Gruntfile.js的路径。

如果您想要路径相对于Gruntfile以外的其他文件夹,请参阅grunt.file.setBase--base cli选项。 More information here

+0

太棒了,非常感谢 – danparm