webstorm仅插入jsdoc注释,生成html需jsdoc命令行工具;光标须在声明行最左侧才能触发/**+enter;箭头函数、解构/剩余参数需手动补全;@this和@param类型必须用大括号包裹;live templates需正确配置变量表达式。

WebStorm 本身不生成 HTML 文档,只负责在代码里插入符合 JSDoc 规范的注释块;真正生成 index.html 必须靠命令行工具 jsdoc 执行。别指望点几下就出来网页——那不是漏步骤,是根本没走第二步。
光标位置决定 /** + Enter 是否生效
这是最常卡住的地方:光标必须紧贴函数/类/方法声明行的最左侧(比如 function calculate() 这一行开头,光标得在 f 前),输入 /** 后立刻按 Enter,WebStorm 才会自动补全 @param 和 @returns 占位符。
- 光标在行中或行尾?不会触发
- 选中整行再按?无效,必须是“声明行开头”
- 箭头函数
const fn = (a) => {}不被识别,得先转成function形式,或用Ctrl+Shift+A搜Fix Doc Comment - 解构参数(如
({ id, name }))和 rest 参数(...args)不会自动生成@param,必须手动补全类型和说明
类方法里的 @this 和参数类型写法不能省
@this 不会自动生成,必须手写;@param 的类型声明必须用大括号包裹,否则后续调用处的类型提示会失效——写成 @param string name 比不写还危险,因为 WebStorm 会误判为 any。
使用 JSON Schema 验证 JSON 数据,从示例 JSON 生成 schema,并将其转换为 TypeScript 接口、Python 数据类或 Markdown 文档。
- 正确写法:
@param {string} name、@param {number[]} ids、@param {{ id: number, name: string }} user - 数组参数推荐写成
@param {Object[]} employees,再单独说明字段:@param {string} employees[].name - 类方法中若用到
this,必须加@this {MyClass},否则this推导为any
Live Templates 自定义 method* 容易配置失败
想用 method* + Tab 快速生成,关键在两处设置:进 Settings → Editor → Live Templates → JavaScript,新建模板后,必须点 Edit variables,把 $functionName$ 的 Expression 改成 methodName();适用范围不能只选 Function declaration,得选 Statements 或 Everywhere in JavaScript。
- 不改
methodName(),$functionName$永远为空 - @param 行别硬写固定数量占位符,多参数时要手动删——建议用 Groovy 脚本动态生成
- 模板里别写死
@param {string} a,应留空让开发者自己填,否则反而干扰
真正容易被忽略的是:注释一旦生成,就参与类型推导;而 JSDoc 注释的语法容错极低——少一个大括号、多一个空格、标签拼错(比如 @return 写成 @returns),都可能导致 WebStorm 完全忽略整段注释,连参数提示都不出现。










