v8 में .js स्क्रिप्ट फ़ाइल के अंदर आप एक और स्क्रिप्ट फ़ाइल कैसे शामिल करते हैं?
एचटीएमएल में < स्क्रिप्ट > टैग है लेकिन यह v8 एम्बेडेड प्रोग्राम के अंदर कैसे किया जा सकता है?आप Google की v8 में एक और जेएस फ़ाइल कैसे शामिल करते हैं?
12
A
उत्तर
22
आप इस कार्यक्षमता मैन्युअल रूप से जोड़ने के लिए, यहाँ है कि कैसे मैं यह किया है:
Handle<Value> Include(const Arguments& args) {
for (int i = 0; i < args.Length(); i++) {
String::Utf8Value str(args[i]);
// load_file loads the file with this name into a string,
// I imagine you can write a function to do this :)
std::string js_file = load_file(*str);
if(js_file.length() > 0) {
Handle<String> source = String::New(js_file.c_str());
Handle<Script> script = Script::Compile(source);
return script->Run();
}
}
return Undefined();
}
Handle<ObjectTemplate> global = ObjectTemplate::New();
global->Set(String::New("include"), FunctionTemplate::New(Include));
यह मूल रूप से एक विश्व स्तर पर सुलभ समारोह है कि लोड और वर्तमान संदर्भ में एक जावास्क्रिप्ट फ़ाइल चला सकते हैं कहते हैं। मैं इसे अपने प्रोजेक्ट के साथ उपयोग करता हूं, एक सपने की तरह काम करता है।
// beginning of main javascript file
include("otherlib.js");
3
आप Node.js या किसी CommonsJS अनुरूप क्रम का उपयोग कर रहे हैं, तो आप (मॉड्यूल) की आवश्यकता होती है उपयोग कर सकते हैं; http://jherdman.ca/2010-04-05/understanding-nodejs-require/
संबंधित मुद्दे
- 1. Google V8
- 2. आप ब्राउज़र में जेएस को कैसे बाधित करते हैं?
- 3. आप एमवीसी पैटर्न में यूएक्स कक्षा कैसे शामिल करते हैं?
- 4. आईओएस: आप फ़ाइल की निर्माण तिथि कैसे प्राप्त करते हैं?
- 5. आप नॉकऑट जेएस के साथ गतिशील बाध्यकारी कैसे करते हैं?
- 6. आप एक हेडर फ़ाइल कैसे शामिल करते हैं जो मौजूद हो या न हो?
- 7. पायथन सेटअप स्क्रिप्ट एक्सटेंशन, आप एक .h फ़ाइल कैसे शामिल करते हैं?
- 8. आपके समाधान में आप कौन सी परियोजनाएं शामिल करते हैं
- 9. आप कैसे ग्रहण करते हैं, ग्रहण में संपादित करते हैं और एक एपीके recompile? क्रमशः?
- 10. आप वेबसाइट की जांच कैसे करते हैं?
- 11. Google Analytics में उन भयानक पीडीएफ रिपोर्ट कैसे बनाते हैं और जब आप Google डॉक आदि प्रिंट करते हैं?
- 12. आप एक swf फ़ाइल को कैसे संकुचित करते हैं
- 13. AJAX कॉल में जेएस फ़ाइल कैसे शामिल करें?
- 14. आप एक्सकोड में फ़ाइल को डुप्लिकेट कैसे करते हैं?
- 15. आप पाइथन में फ़ाइल प्रकार को कैसे उपclass करते हैं?
- 16. आप एक फेसबुक उपयोगकर्ता की जानकारी कैसे प्राप्त करते हैं और इसे डेटाबेस में डालते हैं?
- 17. आप विम की क्विकफ़िक्स सुविधा का उपयोग कैसे करते हैं?
- 18. आप एफ # में मार्कर इंटरफेस की घोषणा कैसे करते हैं और उपभोग करते हैं?
- 19. बैच फ़ाइल में आप SETLOCAL का उपयोग कैसे करते हैं?
- 20. आप बैश में फ़ाइल नाम कैसे पार्स करते हैं?
- 21. jquery.js को किसी अन्य जेएस फ़ाइल में कैसे शामिल करें?
- 22. आप फ़ाइल आकार को सी # में कैसे प्राप्त करते हैं?
- 23. आप एक हस्ताक्षरित चार * की लंबाई कैसे निर्धारित करते हैं?
- 24. आप बिटमैपडेटा ऑब्जेक्ट में बिटमैप फ़ाइल कैसे लोड करते हैं?
- 25. आप सी में फ़ाइल का आकार कैसे निर्धारित करते हैं?
- 26. आप विंडोज बैच फ़ाइल में कैसे लूप करते हैं?
- 27. वेब अनुप्रयोग प्रकाशित करते समय आप एक गैर-संदर्भित डीएलएल कैसे शामिल करते हैं?
- 28. आवश्यकताएँ जेएस ऑप्टिमाइज़र में नेस्टेड आवश्यकता कॉल शामिल नहीं हैं
- 29. आप मानचित्र पर कैसे क्लिक करते हैं और अक्षांश और देशांतर फ़ील्ड को एक रूप में पॉप्युलेट करते हैं?
- 30. आप गणित में नकारात्मक स्तर की व्याख्या कैसे करते हैं?
पर बहुत अच्छा लेख है :) –
ऐसा लगता है कि इस उत्तर को पोस्ट करने के बाद से V8 अपडेट किया गया था। अब आपको 'Set' पर कॉल में Functiontemplate की -> GetFunction() एक्सेसर की आवश्यकता है: उदा। FunctionTemplate :: नया (शामिल करें) -> GetFunction() –
आज के रूप में नवीनतम v8 (17,2013) के साथ, v8 :: तर्क अब मौजूद नहीं है (v8 :: आंतरिक :: तर्क आप है)। तो v8 :: तर्क और फ़ंक्शन में तर्क घोषणा को v8 :: FunctionCallbackInfo और में बदला जाना है। –
yoshi