Node.js 大口/小口-保持一致性

Node.js 大口/小口-保持一致性,node.js,gulp,bower,Node.js,Gulp,Bower,我觉得我错过了一些愚蠢的事情,有人能解释一下为什么我不能把车停在这里吗?文件结构和过程应该非常简单: global.js "use strict"; var gulp = require('gulp'); var bowerRC = require('../.bowerrc'); module.exports.getBowerRC = function() { return console.log(JSON.stringify(bowerRC)); } .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
}
好的,我想做的就是把“directory”的值作为一个全局输入。这样一来,gulp就可以自动地为任何任务/插件使用这些值,并在不破坏bower外壳本身的情况下保持枯燥的概念

问题是,当我从任务调用函数时,它会出错。奇怪的是,如果我将变量bowerRC切换为指向bower.json,它就可以正常工作了。。。想法

参考im使用节点v0.12.0、gulp v3.9.0、bower v1.4.1

编辑:在windows7 64位上运行,恐怕别无选择

EDIT2:更新到node 0.12.4,我认为这与文件的需要方式有关,因为即使我注释掉函数,错误仍然存在


弄明白了,修改后的代码如下所示:

"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);
}

我找到了其中的一部分,因为.bowerrc没有扩展节点,它是以.js文件而不是JSON文件的形式读取的,这就是为什么解析错误。。。现在,如果我能想出如何让它表现出来。。。