You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为discord.js中用动态变量访问的dtm用户对象获取智能提示?

要实现dtm[interaction.user.id]的智能提示,直接用JSDoc给dtm对象定义结构即可,操作非常简单:

步骤1:先定义单条用户数据的结构

用@typedef声明用户数据的类型,你可以随时往里面新增后续要用到的字段:

/**
 * @typedef {Object} UserData
 * @property {number} wallet - 用户钱包余额
 * 示例新增字段:@property {number} exp - 用户经验值
 */

步骤2:给dtm对象加类型注解

声明dtm是键为字符串(用户ID)、值为上面定义的UserData类型的对象,两种写法都可以:

写法1:通用对象类型注解

/**
 * 存储全量用户数据
 * @type {Object.<string, UserData>}
 */
const dtm = {
  "92875891383": { wallet: 100 }
};

写法2:Record类型注解(TS环境兼容更好)

/**
 * 存储全量用户数据
 * @type {Record<string, UserData>}
 */
const dtm = {
  "92875891383": { wallet: 100 }
};

配置完之后,你再输入dtm[interaction.user.id].的时候,编辑器就会自动弹出wallet等你定义过的字段提示了。

如果需要考虑用户ID不存在的场景,可以把类型改成Record<string, UserData | undefined>,编辑器还会自动提醒你做非空校验,避免运行时报错。

内容的提问来源于stack exchange,提问作者Tesohh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 21:45:01