Tag: edgejs

在运行JS函数时,如何在c#中的Edgejs中获取错误文本?

我想在控制台应用程序的c#平台中运行一些JavaScript文件,例如: using System; using System.Threading.Tasks; using EdgeJs; class Program { public static async Task Start() { var func = Edge.Func(@" return function (data, callback) { var hello = function() { // some javascript syntax error … return ' Hello ' + data; }; callback(null, hello()); } "); Console.WriteLine(await func("Word!")); } static void Main(string[] args) { […]

无法parsingedgejs上的模块“fs”

我在我的节点项目中使用最新的edgejs(6.5.1)。 但是当我在我的项目中使用边缘, var edge = require('edge'); 我得到这个错误 无法解决模块'FS' 后来当我检查edge.js文件,我看到边缘使用'FS' var fs = require('fs'), path = require('path'), builtEdge = path.resolve(__dirname, '../build/Release/' + (process.env.EDGE_USE_CORECLR || !fs.existsSync(path.resolve(__dirname, '../build/Release/edge_nativeclr.node')) ? 'edge_coreclr.node' : 'edge_nativeclr.node')), edge; 我该如何解决这个错误?

为什么在通过Edge.js从Node.js调用C#时需要等待Task.Run?

我有这个连接到Tobii EyeX眼动追踪设备的EyeX引擎的示例C#代码,订阅凝视数据stream并将结果写入控制台。 var eyeXHost = new EyeXHost(); var stream = eyeXHost.CreateGazePointDataStream(GazePointDataMode.LightlyFiltered); eyeXHost.Start(); stream.Next += (s, e) => Console.WriteLine("Gaze point at ({0:0.0}, {1:0.0}) @{2:0}", eX, eY, e.Timestamp); Console.In.Read(); 我在Edge.js的帮助下从Node.js脚本调用这段代码。 我能够得到它的工作,但我发现我不得不以我不完全理解的方式修改代码。 var eyeXHost = new EyeXHost(); var stream = eyeXHost.CreateGazePointDataStream(GazePointDataMode.LightlyFiltered); await Task.Run(() => eyeXHost.Start()); stream.Next += async (s, e) => { await onGazePoint(new GazePoint(eX, eY, e.Timestamp)); }; […]

为什么这个lambda函数需要括号?

return (Func<object, Task<object>>)(async (dynamic data) => { methodCall(data.data, data.more); return null; }); 从我所收集的代码正在做的事情来看,它明确地将lambda函数作为一个委托来转换,然后返回这个委托(在这种情况下,它将返回一个edgejs函数)。 当parens被删除时,从构build过程中收到8个错误。 语法错误,','预计 ; 预期 预计 名称async在当前上下文中不存在 dynamic名称在当前上下文中不存在 名称数据在当前上下文中不存在 名称数据在当前上下文中不存在 名称数据在当前上下文中不存在