我觉得我在这里错过了一些愚蠢的东西,有人可以向我解释为什么我不能把.bowerrc拉进去吗?文件结构和过程应该非常简单:
global.js
"use strict";
var gulp = require('gulp');
var bowerRC = require('../.bowerrc');
module.exports.getBowerRC = function() {
return console.log(JSON.stringify(bowerRC));
}
.bowerrc
{
"directory": "./resources/bower_components/",
"analytics": false
}
好的,我想要做的就是提取"目录"的价值。作为全球吞噬者。这样,gulp可以自动使用任何任务/插件的值,并且它可以维护DRY概念而不会破坏bower shell本身。
问题是,当我从一个任务调用该函数时它会出错。奇怪的是,如果我将变量bowerRC切换到指向bower.json它可以正常工作......想法?
参考im使用节点v0.12.0,gulp v3.9.0,bower v1.4.1
编辑:在windows7 64bit上运行它,我不用担心
EDIT2:更新到节点0.12.4,没有任何变化我相信它与文件的需要有关,因为即使我注释掉该功能,错误仍然存在。
答案 0 :(得分:5)
想出来,改变后的代码如下:
"use strict";
var gulp = require('gulp');
var fs = require('fs');
module.exports.getBowerRC = function ()
{
var bowerRC = JSON.parse(fs.readFileSync('./.bowerrc', 'utf8'));
return console.log(bowerRC);
}