2015-06-08 24 views
11

मुझे लगता है कि मैं यहाँ कुछ बेवकूफ याद कर रहा हूं, क्या कोई मुझे समझा सकता है कि मैं क्यों नहीं डाल सकता .bowerrc gulp में क्यों खींच सकता है? फ़ाइल संरचना और प्रक्रिया अत्यंत सरल होना चाहिए:गुलप/बोवर - स्थिरता बनाए रखने

File Tree

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 
} 

ठीक है तो क्या मैं करना चाहता हूँ है मूल रूप से "निर्देशिका" के मूल्य में वैश्विक रूप में गल्प में खींचें। इस तरह गल्प स्वचालित रूप से जो भी कार्य/प्लगइन के लिए मूल्य का उपयोग कर सकता है और यह बोवर खोल को तोड़ने के बिना DRY अवधारणाओं को बनाए रखता है।

समस्या यह है कि, जब मैं किसी कार्य से फ़ंक्शन को त्रुटियों में कॉल करता हूं। अजीब हिस्सा यह है कि अगर मैं bower.json पर इंगित करने के लिए वेरिएबल bowerRC स्विच करता हूं तो यह उसके लिए ठीक काम करता है ... विचार?

संदर्भ im के लिए

नोड v0.12.0, घूंट v3.9.0, बोवर v1.4.1 का उपयोग कर

संपादित करें: windows7 64 बिट, कोई विकल्प नहीं im डर पर इसे चलाने

EDIT2: नोड 0.12.4 में अपडेट किया गया , कोई बदलाव नहीं, मेरा मानना ​​है कि फाइलों की आवश्यकता के साथ इसका कुछ संबंध है, भले ही मैं कार्य को टिप्पणी करता हूं, त्रुटि त्रुटि बनी रहती है।

console

+1

मैं इसका हिस्सा पता लगा, क्योंकि .bowerrc कोई विस्तार नोड है JSON के बजाय एक .js फ़ाइल के रूप में इसे पढ़ने है यही कारण है कि पार्सिंग त्रुटि ... अब अगर मैं सिर्फ यह समझ सकता हूं कि इसे कैसे व्यवहार किया जाए ... –

उत्तर

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); 
} 
संबंधित मुद्दे