常规注释
/**
* @desc 注释测试
* @date 2022/08/29
* @author zengwe
* @param {string} name
* @param {number} age
* @param {{old: string, current: string}} address
* @returns {boolean}
*/
function test(name, age, address) {
return true
}
添加代码使用方法
/**
* useage:
*
* ```typescript
* let result = dd()
* ```
*/
function dd() {
}
添加接口
当遇到此类型
interface ITree {
id: string;
name: string;
children: ITree;
}
或者定义的类型多个地方使用时,可以在注释中声明类型
/**
* @typedef {'admin'|'super'|'member'} ViewType
* @typedef {{name: string, code: string, view: ViewType[], children: INode[]}} INode
*/
/*
* @param {ViewType} type
* @param {INode[]} nodes
*/
function test(type, nodes) {
}
未声明的变量添加数据类型
缺点变量被赋值时和定义的数据类型不一致没有任何提示
/*
* @type {string}
*/
let name = '';
当申明变量类型过多或跨文件时
types.d.ts
declare type ViewType = 'admin'|'super'|'member'
使用
/// <reference path="./types.d.ts"/>
export const api = {
/**
*
* @param {*} roleId
* @param {ViewType} viewType
*/
getRole: (roleId, viewType) => {
}
}