uni-app @param 标记不提示问题

发布于 1周前 作者 songsunli 来自 Uni-App

uni-app @param 标记不提示问题

操作步骤:

在公共js中写了一个函数,并用@param 标签做了标注,当公共js文件打开时有提示,担当公共js文件关闭时,提示没有了

预期结果:

在公共js中写了一个函数,并用@param 标签做了标注,当公共js文件打开时有提示,担当公共js文件关闭时,也有提示

实际结果:

在公共js中写了一个函数,并用@param 标签做了标注,当公共js文件打开时有提示,担当公共js文件关闭时,提示没有了

bug描述:

在公共js中写了一个函数,并用@param 标签做了标注,当公共js文件打开时有提示,担当公共js文件关闭时,提示没有了


1 回复

uni-app 开发中,使用 [@param](/user/param) 标记来为函数参数添加注释是一种良好的实践,有助于提高代码的可读性和维护性。然而,有时候你可能会遇到 [@param](/user/param) 标记不提示的问题,这可能与以下几个原因有关:

1. IDE 配置问题

  • 检查 IDE 支持:确保你使用的 IDE(如 VSCode、HBuilderX)支持 JSDoc 注释提示。VSCode 默认支持 JSDoc,但如果你使用的是 HBuilderX,可能需要检查相关配置。
  • 插件安装:在 VSCode 中,确保安装了 JSDoc 相关的插件,如 Document This,以增强 JSDoc 的支持。
  • 语言模式:确保你的文件语言模式设置为 JavaScriptTypeScript,以便 IDE 能够正确解析 JSDoc 注释。

2. JSDoc 语法问题

  • 正确使用 [@param](/user/param):确保你正确使用了 [@param](/user/param) 标记。例如:
    /**
     * 这是一个示例函数
     * [@param](/user/param) {string} name - 用户的名字
     * [@param](/user/param) {number} age - 用户的年龄
     */
    function exampleFunction(name, age) {
        // 函数体
    }
  • 类型注释:确保为 [@param](/user/param) 标记提供了正确的类型注释(如 {string}{number} 等)。

3. 文件类型问题

  • 文件扩展名:确保你的文件扩展名是 .js.ts,以便 IDE 能够正确识别并解析 JSDoc 注释。如果文件扩展名是 .vue,则需要确保在 <script> 标签中使用 JSDoc 注释。

4. IDE 缓存问题

  • 清除缓存:有时候 IDE 的缓存可能会导致 JSDoc 提示不生效。尝试重启 IDE 或清除缓存。

5. TypeScript 配置问题

  • tsconfig.json:如果你使用的是 TypeScript,确保 tsconfig.json 配置正确,并且 "checkJs": true 选项已启用,以便 TypeScript 能够检查 JavaScript 文件中的 JSDoc 注释。

6. HBuilderX 特定问题

  • HBuilderX 版本:如果你使用的是 HBuilderX,确保你使用的是最新版本,因为较旧的版本可能对 JSDoc 的支持不够完善。
  • 插件支持:HBuilderX 可能需要安装特定的插件来支持 JSDoc 提示,检查并安装相关插件。

7. 代码结构问题

  • 函数声明位置:确保 [@param](/user/param) 注释紧挨着函数声明,中间不能有其他代码或注释。

8. ESLint 配置问题

  • ESLint 规则:确保 ESLint 配置中没有禁用 JSDoc 相关的规则,如 valid-jsdoc

示例代码

以下是一个正确的 [@param](/user/param) 标记使用示例:

/**
 * 计算两个数字的和
 * [@param](/user/param) {number} a - 第一个数字
 * [@param](/user/param) {number} b - 第二个数字
 * [@returns](/user/returns) {number} 两个数字的和
 */
function add(a, b) {
    return a + b;
}
回到顶部
AI 助手
你好,我是IT营的 AI 助手
您可以尝试点击下方的快捷入口开启体验!