如何在v8中的.js腳本文件中包含另一個腳本文件?
在HTML中有<腳本>標籤,但是如何在v8嵌入式程序中完成?如何在Google的v8中加入另一個js文件?
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));
基本上,它增加了一個全局可訪問功能可以加載和運行當前上下文中的JavaScript文件。我把它和我的項目一起使用,就像做夢一樣。
// beginning of main javascript file
include("otherlib.js");
3
如果您使用的Node.js或任何CommonsJS兼容的運行,你可以使用要求(模塊); 有一篇關於它的好文章http://jherdman.ca/2010-04-05/understanding-nodejs-require/
相關問題
- 1. 如何將另一個js文件導入到js文件中?
- 2. 如何在一個js文件中寫入以防止另一個js文件被加載
- 3. 如何從另一個js文件回調一個js文件?
- 4. 在另一個JS一個js文件中如何使用數據文件
- 5. 如何在另一個文件的html上加載js動作
- 6. 在另一個JS文件中加載JavaScript文件
- 7. 如何從另一個.js文件中調用一個.js文件?
- 8. 如何訪問另一個JS文件
- 9. 如何導入內的另一個js文件JS文件,就像我們如何導入CSS文件內的另一個CSS文件
- 10. Javascript來加載另一個js文件
- 11. 如何包括另一個JS JS文件文件
- 12. 如何從另一個js文件中調用一個js中的JavaScript對象?
- 13. 在另一個JS文件中包含JS文件
- 14. 如何使用js文件中另一個js文件的功能?
- 15. 如何將數組寫入另一個.js文件?
- 16. 如何在Metro應用中的另一個js文件中調用js函數?
- 17. 如何從一個QtScript .js文件調用另一個QtScript .js文件
- 18. 在另一個之前加載一個JS文件
- 19. Linux的 - 在一個文件中搜索文本,並加入另一個文件
- 20. 我如何加載一個按鈕點擊另一個js文件中鈦
- 21. 如何使用JS加載另一個html文件
- 22. 如何在另一個文件中引入jsp文件?
- 23. 如何將jquery.js包含在另一個js文件中?
- 24. 如何在另一個js文件中獲取javascript值
- 25. 如何通過JS在另一個文件中調用DIV ID
- 26. 如何在主JS文件中調用另一個JavaScript
- 27. 如何在另一個JS文件中調用AdSense代碼?
- 28. 如何在另一個C++頭文件中導入一個類?
- 29. 如何使用reactjs中另一個js文件中的函數?
- 30. 如何使用角度js中的rootcope將值從一個js文件傳遞到另一個js文件?
非常感謝:) – 2009-08-23 07:06:38
看起來像V8在此答案發布之後已更新。您現在在調用「設置」時需要Functiontemplate的 - > GetFunction()訪問器:例如FunctionTemplate :: New(Include) - > GetFunction() – 2013-05-28 19:09:26