2015-04-03 64 views
0

我只是为我的gulpfile.js做了一些设置,但是我遇到了问题。Gulp设置javascript对象

我的设置 - 在JS文本对象 - 这样的:

// Directories 
var dirs = { 
    source: './src/', 
    build: this.source + 'build/' 
}; 

// Files to read. 
var paths = { 
    sass: { 
     src: dirs.source + 'sass/**/*.scss', 
     dest: dirs.build + 'css/' 
    }, 
    js: { 
     src: dirs.source + 'js/**/*.js', 
     dest: dirs.build + 'js' 
    } 
}; 

但是,关闭过程中,dirs.build回报./undefinedbuild/目录,而不是./src/build/目录。

是否有任何方式或不同风格的设置 - 如何解决它(如何在JS中进行设置)?文字对象符号最适合我。

回答

0

this不是基于对象的,而是基于功能范围的。因此,您的情况为global或您所在的函数。另一方面,如果直接键入dirs.source,则此属性尚未定义。创建文字,然后添加属性:

// Directories 
var dirs = {}; 
dirs.source = './src/'; 
dirs.build = dirs.source + 'build/' 

// Files to read. 
var paths = { 
    sass: { 
     src: dirs.source + 'sass/**/*.scss', 
     dest: dirs.build + 'css/' 
    }, 
    js: { 
     src: dirs.source + 'js/**/*.js', 
     dest: dirs.build + 'js' 
    } 
}; 
0

你可以做

var dirs = { 
    source: './src/', 
    build: dirs.source + 'build/' 
};