uni-app 开发抖音小程序使用全局变量 tt 没有智能提示

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

uni-app 开发抖音小程序使用全局变量 tt 没有智能提示

操作步骤:

  • 新建项目输入全局变量tt即可

预期结果:

  • 输入全局变量tt要像输入全局变量wx那样智能提示那样显示有哪些方法和方法的参数

实际结果:

  • 输入全局变量tt没有任何提示但是使用tt也不报错可以用

bug描述:

开发抖音小程序使用抖音小程序api需要使用全局变量tt 但是输入tt后代码助手不显示这个全局变量 甚至写tt中的方法也没有任何提示。

信息类别 信息内容
产品分类 uniapp/小程序/字节跳动
PC开发环境 Windows
PC开发环境版本 windows10
HBuilderX类型 正式
HBuilderX版本 3.99
工具版本 第三方开发者工具3.140.1
项目创建方式 HBuilderX

3 回复

并且我用alt+鼠标左键点击tt也跳不过去


自行 安装类型声明文件 ,试了下wx、my等也没有提示

在 uni-app 开发抖音小程序时,默认情况下,全局变量 tt 可能没有智能提示,这是因为 TypeScript 或 JavaScript 的智能提示工具(如 VSCode 的 IntelliSense)无法自动识别 tt 的类型定义。为了解决这个问题,你可以手动添加类型定义,以便获得智能提示。

以下是几种解决方案:


1. 在项目中添加类型定义文件

你可以在项目中创建一个类型定义文件(如 global.d.ts),并声明 tt 的类型。

// global.d.ts
declare const tt: typeof TiktokMiniProgram;

然后,确保 tsconfig.jsonjsconfig.json 中包含了这个文件:

{
  "include": ["src/**/*", "global.d.ts"]
}

2. 使用 @types/tt-miniprogram 类型定义包

抖音小程序官方可能已经提供了类型定义包。你可以尝试安装它:

npm install @types/tt-miniprogram --save-dev

安装后,TypeScript 或 VSCode 会自动识别 tt 的类型,并提供智能提示。


3. 手动声明 tt 的类型

如果你不想安装额外的类型定义包,可以手动声明 tt 的类型。例如:

declare const tt: {
  request: (options: any) => void;
  showToast: (options: any) => void;
  // 其他 API
};

将这段代码放在全局的 .d.ts 文件中,或者在需要使用 tt 的文件顶部。


4. 使用 uni 代替 tt

在 uni-app 中,推荐使用 uni 对象调用 API,而不是直接使用 ttuni 已经对抖音小程序做了适配,并且 uni 的类型定义在 @dcloudio/types 中已经提供。

例如:

uni.request({
  url: 'https://example.com',
  success(res) {
    console.log(res);
  }
});

如果要使用 tt 特有的 API,可以通过条件判断:

if (typeof tt !== 'undefined') {
  tt.someTiktokAPI();
}

5. 配置 jsconfig.jsontsconfig.json

如果你使用的是 JavaScript,可以配置 jsconfig.json 来启用智能提示:

{
  "typeAcquisition": {
    "include": ["tt-miniprogram"]
  }
}

对于 TypeScript,确保 tsconfig.json 中启用了类型检查:

{
  "compilerOptions": {
    "types": ["tt-miniprogram"]
  }
}
回到顶部
AI 助手
你好,我是IT营的 AI 助手
您可以尝试点击下方的快捷入口开启体验!