मेरा एक्सटेंशन टेक्स्ट टेम्प्लेट में प्रतिस्थापन चर लागू करने के लिए हैंडलबार का उपयोग कर रहा है। मैं टेम्प्लेट टेक्स्ट को एक्सटेंशन में कहां स्टोर कर सकता हूं?

मैं वर्तमान में एक्सटेंशन.ts फ़ाइल में टेम्प्लेट को स्ट्रिंग्स के रूप में संग्रहीत कर रहा हूं। इसके बजाय एक फ़ोल्डर का उपयोग करेंगे जो टेम्पलेट फ़ाइलों को संग्रहीत करता है और उस फ़ोल्डर को vsce पैकेज में शामिल करता है।

1
RockBoro 1 नवम्बर 2019, 16:46

1 उत्तर

सबसे बढ़िया उत्तर

फ़ाइलों को स्टोर, पैकेज और एक्सेस करने के लिए, आप निम्न कार्य कर सकते हैं:

  1. अपने एक्सटेंशन रूट में एक सब-फ़ोल्डर बनाएं (package.json के समान स्तर), चलिए इसे एक नाम देते हैं resources
  2. उस फोल्डर में एक file.txt रखें
  3. जब तक आप इसे .vscodeignore में सूचीबद्ध नहीं करेंगे, तब तक फ़ाइल पैक हो जाएगी (जैसा कि गामा11 द्वारा बताया गया है)
  4. context.asAbsolutePath(...) API का उपयोग करके इसे एक्सेस करें

उदाहरण:

import * as path from 'path';
import * as fs from 'fs';

export function activate(context: ExtensionContext) {
    let fullFilePath = context.asAbsolutePath(path.join('templates', 'file.txt'));
    fs.readFile(fullFilePath, (err, data) => { ... });
}
2
Jan Dolejsi 2 नवम्बर 2019, 14:16