我不确定 jint 是否提供这样的功能。但你可以尝试类似的东西
假设您有两个 js 文件,如下所示。
// file1.js
log('Hiii.. I am file 1');
require('C:\\file2.js');
// file2.js
log('Hiii.. I am file 2');
您可以构建require
如下所示。
using System;
using Jint;
using Jint.Native;
namespace JintSample
{
class Program
{
static void Main(string[] args)
{
var engine = new Engine();
JsValue require(string fileName)
{
string jsSource = System.IO.File.ReadAllText(fileName);
var res = engine.Execute(jsSource).GetCompletionValue();
return res;
}
engine.SetValue("require", new Func<string, JsValue>(require))
.SetValue("log", new Action<string>(System.Console.WriteLine));
JsValue name = engine.Execute(@"require('C:\\file1.js')").GetCompletionValue();
}
}
}
我希望这可以帮助你。