【发布时间】:2016-07-01 21:18:52
【问题描述】:
我创建了一个 node.js 应用程序。我需要在运行 node.js 服务之前编译或检查是否出现语法错误。我需要将它集成到 jenkins 中。请指导我验证 node.js 应用程序
【问题讨论】:
标签: javascript node.js jenkins
我创建了一个 node.js 应用程序。我需要在运行 node.js 服务之前编译或检查是否出现语法错误。我需要将它集成到 jenkins 中。请指导我验证 node.js 应用程序
【问题讨论】:
标签: javascript node.js jenkins
Node.js 提供 CLI 选项 --check 或 -c 用于在不运行给定文件的情况下检查给定文件的语法错误。在使用 Linux 或 MacOS 时,类似以下的命令有助于检查文件夹中所有明显的 javascript 文件是否包含基本工作代码:
find -name "*.js" | xargs node -c
【讨论】:
查看 TypeScript。它是一种允许您使用类型自动完成并且如果您有一些语法错误则编译失败的语言。它是 JavaScript 的超集,可转译为 JavaScript。
【讨论】:
使用以下代码检查 node.js 应用程序中的语法错误 -
var check = require('syntax-error')
检查源代码字符串 src 是否有语法错误。或者,您可以指定将显示在输出中的文件名文件。 如果 src 有语法错误,则返回一个可以打印或字符串化的错误对象 err。如果 src 中没有语法错误,则返回 undefined。
var err = check(src, file)
【讨论】:
您可以使用“节点语法错误”模块。 它可以帮助您检测和报告源代码字符串中的语法错误。
当您键入 node src.js 时,您会收到一个友好的错误报告,说明语法错误的确切位置。这个模块让你检查语法错误并以类似友好的格式报告它们你。
例如:
var fs = require('fs');
var check = require('syntax-error');
var file = __dirname + '/src.js';
var src = fs.readFileSync(file);
var err = check(src, file);
if (err) {
console.error('ERROR DETECTED' + Array(62).join('!'));
console.error(err);
console.error(Array(76).join('-'));
}
【讨论】: