2015-04-03 87 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/' 
};