node.js - Package.json में परिवेश चर एक्सेस करें




npm environment-variables (2)

एनपीएम स्क्रिप्ट में एक पर्यावरण चर को एक्सेस करने के लिए आप अपने package.json में कुछ ऐसा करेंगे package.json :

"scripts": {
    "preinstall": "echo ${npm_package_name}"
}

समस्या यह है कि केवल यूनिक्स में काम करता है, न कि विंडोज़, जहां आपको %npm_package_name% का उपयोग करना है

क्या यह ओएस स्वतंत्र करने का एक तरीका है? यह अच्छा होगा यदि एनपीएम ऐसे चर विस्तार को कर सकता है, जो कमांड को लागू करने से पहले हो सकता है।


इसे क्रॉस-प्लेटफॉर्म बनाने के लिए, cross-var उपयोग करें:

"scripts": {
    "preinstall": "cross-var echo ${npm_package_name}"
}

ऐसा करने के लिए कोई भी ज्ञात तरीका नहीं है जो ओएस स्वतंत्र है

एक अच्छा समाधान एक नोड स्क्रिप्ट के भीतर कमांड निष्पादित करने के लिए है:

सबसे पहले, नोड स्क्रिप्ट निष्पादित करने के लिए preinstall कमांड को बदलें:

"scripts": {
    "preinstall": "node nameEcho.js"
}

तब आप nameEcho.js फ़ाइल में कमांड को परिभाषित करते हैं:

// require the package.json file
var pjson = require('./package.json');

// echo the package's name
console.log(pjson.name);




package.json