我正在尝试使用JSDoc(3)记录JavaScript文件,例如:
/** 1 if gnome-bluetooth is available, 0 otherwise
* @type {boolean}
* @const
*/
const HAVE_BLUETOOTH = @HAVE_BLUETOOTH@;
现在这个文件(名为
config.js.in
)本身不是有效的Javascript代码;该文件会通过一个Makefile运行,以替换一个适当的值来代替@HAVE_BLUETOOTH@
。当我尝试对其运行JSdoc时,由于文件中的语法错误,它(可以理解地)报错了。 有没有一种方法可以告诉JSDoc忽略此文件中的所有代码,只考虑注释内容?(我可能需要为每个doclet添加
@name
标签,以完全将文档与代码分开;这没问题。)类似于:
/** 1 if gnome-bluetooth is available, 0 otherwise
* @name HAVE_BLUETOOTH
* @type {boolean}
* @const
*/
/** @ignore */ // somehow ignore from here onwards
const HAVE_BLUETOOTH = @HAVE_BLUETOOTH@;
/** !@ignore */ // somehow don't ignore from here onwards (although I'd be happy
// to ignore the entire file)
如果可能的话,我希望不修改文件的代码部分(我正在为一个现有项目添加文档)。例如,我可以通过以下方式解决这个问题:
const HAVE_BLUETOOTH = parseInt('@HAVE_BLUETOOTH@', 10);
我需要让这个文件再次具有有效的JS语法,这样解析器就不会出错。但这也意味着我要修改原始文件的代码,而我希望避免这种情况(我更喜欢仅添加文档注释)。
谢谢!