node.js - 如何修复:错误:如果 .NET 源代码作为 JavaScript 函数提供,函数体必须是 /* ... */ 注释
问题描述
我正在尝试从此处的文档中运行基本的 hello world 示例(这是页面上的第一个示例): https ://github.com/agracio/edge-js
我有一个正在运行的打字稿文件(请参阅下面的代码)。我在 Windows 10 64 位的节点版本 9.9.0 上。我只进行了以下安装: npm install edge npm install edge.js npm install @types/node --save-dev
我已将安装到与打字稿文件相同的目录。
我能够在命令行中运行 ts-node app.ts 并将它的 console.log("hi") 成功地放在该目录中。
但是,当我将代码更改为下面的示例时,它给了我错误 throw new Error('If .NET source is provided as JavaScript function, function body must be a /* ... */ comment.');
我最初尝试使用 edge.js 执行此操作,但我不断收到我需要预编译的错误。在我的一生中,执行 build.bat 版本 10.5.3 时,我无法找到我的 python 可执行文件。(尽管包含一个值为 c:\Python\Python37\python.exe 的环境变量 PYTHON)我想尝试使用 edge-js,因为它已经预编译了。我将节点降级到 9.9(我卸载了节点 10.15.3,然后从网站上安装了 9.9.0 msi),因为我认为 edge-js 只支持版本 9。好吧,我正在尝试使用版本 9 运行 edge-js,我我仍然收到错误,尽管这是一个不同的错误。
这是我试图运行的代码:
var edge = require('edge-js');
var helloWorld = edge.func(function () {/*
async (input) => {
return ".NET Welcomes " + input.ToString();
}
*/});
helloWorld('JavaScript', function (error, result) {
if (error) throw error;
console.log(result);
});
解决方案
我不敢相信这行得通。这是一个语法错误。注释和函数结尾之间的空白量问题。这是正确的语法:
var edge = require('edge-js');
var helloWorld = edge.func(function () {
/*async (input) => {
return ".NET Welcomes " + input.ToString();
}*/
});
helloWorld('JavaScript', function (error, result) {
if (error) throw error;
console.log(result);
});
推荐阅读
- woocommerce - Woocommerce 在产品页面上隐藏前缀
- c++ - 如何在 C++ 中获取 hh:mm:ss.uuuuuu 时间戳?
- sql-server - SQL - 如何在逐行迭代时比较列的数据,如果它们不匹配则插入新行
- php - php版本与作曲家不匹配
- java - Oracle db 和原始文件上的 clob 数据的字节数不同
- c++ - 如何在特定索引处将 64 位浮点数添加到无符号字符数组(C++)
- c# - MIP SDK - MIP SDK 中有哪些可用的用户权限?
- javascript - 网站可以告诉浏览器它需要保持清醒吗?
- python - 查找包含 {{ ds }} 的文件
- python - 游戏。每次吃鱼时如何调整我的鱼播放器图像的大小?