如何在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. 如何在另一个文件的html上加载js动作
- 5. 如何从另一个.js文件中调用一个.js文件?
- 6. 如何导入内的另一个js文件JS文件,就像我们如何导入CSS文件内的另一个CSS文件
- 7. 如何从另一个js文件中调用一个js中的JavaScript对象?
- 8. 如何将数组写入另一个.js文件?
- 9. Linux的 - 在一个文件中搜索文本,并加入另一个文件
- 10. 如何在另一个文件中引入jsp文件?
- 11. 如何在另一个js文件中获取javascript值
- 12. 如何在主JS文件中调用另一个JavaScript
- 13. 如何将jquery.js包含在另一个js文件中?
- 14. 如何在另一个C++头文件中导入一个类?
- 15. 如何使用reactjs中另一个js文件中的函数?
- 16. 如何使用角度js中的rootcope将值从一个js文件传递到另一个js文件?
- 17. 的Javascript:加载一个JS文件到另一个JS文件,就像是一个文件
- 18. 如何从角度2中加载另一个js文件中的js文件 - webpack
- 19. 如何从Titanium中的另一个.js文件实现函数
- 20. 如何在v8中创建另一个线程
- 21. 如何访问另一个JS定义JS数组文件
- 22. 根文件中的JS文件无法在Google Appengine中加载
- 23. 我如何“导入”一个java文件到另一个文件
- 24. 如何加载另一个nib文件?
- 25. 如何一个HTML文件添加到另一个HTML文件
- 26. 如何将文件插入到另一个文件在vim
- 27. 在一个文本文件中增加值并将文本写入另一个
- 28. 如何使用导入从文件写入另一个文件?
- 29. 如何将列从一个文件附加到bash中的另一个文件?
- 30. 如何让Intellisense引用另一个文件夹中的JS文件?
非常感谢:) – 2009-08-23 07:06:38
看起来像V8在此答案发布之后已更新。您现在在调用“设置”时需要Functiontemplate的 - > GetFunction()访问器:例如FunctionTemplate :: New(Include) - > GetFunction() – 2013-05-28 19:09:26