2016-03-06 15 views
8

मैं सभी नोड.जेएस कोर मॉड्यूल की सटीक अप-टू-डेट सूची प्राप्त करने का एक तरीका ढूंढ रहा हूं। क्या कोई एनपीएम मॉड्यूल है जो ऐसी चलती सूची की आपूर्ति करता है? मेरे जीवन के इतिहास में कहीं मेरे पास इस प्रश्न का उत्तर लिखा गया था, लेकिन मुझे यह याद नहीं है और न ही मुझे याद है कि यह कितना अच्छा समाधान था।नोड कोर मॉड्यूल की सटीक सूची

+3

के बाद और "सार," नोड के [API दस्तावेज़] "इन दस्तावेज़ के बारे में" (https://nodejs.org/dist/latest-v5.x/docs/api/) मॉड्यूल के द्वारा आयोजित किया जाता है। वे स्रोत फ़ाइलों में भी मिल सकते हैं, ['lib' निर्देशिका के तहत] (https://github.com/nodejs/node/tree/master/lib) (' _' उपसर्गों वाली फ़ाइलों को अनदेखा करें)। –

+0

@ जोहाननाथन मैं इस जानकारी को प्रोग्रामेटिक रूप से प्राप्त करने के लिए देख रहा हूं, कुछ भयानक वेब स्क्रैपिंग किए बिना एलओएल –

+0

बस इसे [टॉनिक] (https://tonicdev.com/npm/builtin-modules) पर लाइव देखें –

उत्तर

18

आप को रेखांकित-उपसर्ग के गुण तक पहुँचने से परहेज नहीं करते हैं, तो repl एक _builtinLibs सरणी का निर्यात करता है अनियंत्रित और समान मॉड्यूल शामिल नहीं है।

+0

मैंने नहीं किया इसका परीक्षण करें, लेकिन मुझे लगता है कि यह तीसरी पार्टी लाइब्रेरी –

+0

'प्रतिकृति' में अर्ध-स्थैतिक JSON फ़ाइल की तुलना में थोड़ा बेहतर है, सूची में भी है, लेकिन मुझे लगता है कि आपने जानबूझकर इसे हटा दिया है, क्योंकि कोई बात नहीं है कि यह नहीं हो सका वहां रहें, क्योंकि आप पूरी सूची दिखाने के लिए उस मॉड्यूल का उपयोग कर रहे हैं! खैर, यह मेरे पीसी –

+0

@ अंकुरशाह पर दिखा रहा है मैंने उस समय कुछ भी नहीं हटाया। यह उस समय नोड में शायद एक त्रुटि थी। – mscdex

2

33 मॉड्यूल https://www.npmjs.com/package/builtin-modules के अनुसार बिल्टिन-मॉड्यूल में हैं।

36 according to core structures 
28 repositories in Git 
112 packages 

यह एक लंबे समय के लिए इस सूची बनाने के लिए ले जाएगा। इसे node_core पर एक शोध के रूप में करना अच्छा विकल्प होगा।

 
$ node -pe "require('repl')._builtinLibs" 
[ 'assert', 
    'buffer', 
    'child_process', 
    'cluster', 
    'crypto', 
    'dgram', 
    'dns', 
    'domain', 
    'events', 
    'fs', 
    'http', 
    'https', 
    'net', 
    'os', 
    'path', 
    'punycode', 
    'querystring', 
    'readline', 
    'stream', 
    'string_decoder', 
    'tls', 
    'tty', 
    'url', 
    'util', 
    'v8', 
    'vm', 
    'zlib' ] 

उस सूची में नहीं है के रूप में "पूर्ण" यह होता है कि में builtin-modules मॉड्यूल द्वारा प्रदान की गई सूची के रूप में:

3

जे 4 एफ: आप github api का उपयोग कर सकते हैं और सीधे JSON प्रारूप में फ़ाइलों की एक सूची प्राप्त कर सकते हैं।

var http = require('https') 
var path = require('path') 

var options = { 
    hostname: 'api.github.com', 
    path: '/repos/nodejs/node/contents/lib', 
    method: 'GET', 
    headers: { 'Content-Type': 'application/json', 
      'user-agent': 'nodejs/node' 
    } 
} 

var req = http.request(options, (res) => { 
    res.setEncoding('utf8') 
    var body = "" 
    res.on('data', (data) => { body += data }) 
    res.on('end',() => { 
    var list = [] 
    body = JSON.parse(body) 
    body.forEach((f) => { 
     if (f.type === 'file' && f.name[0]!=='_' && f.name[0]!=='.') { 
     list.push(path.basename(f.name,'.js')) 
     } 
    }) 
    console.log(list) 
    }) 
}) 
req.on('error', (e) => { throw (e) }) 
req.end() 
संबंधित मुद्दे