Raycast 中文文档
  • 介绍
  • 链接
    • 官网
    • 官网 API 文档
    • 社区
    • GitHub
    • Store
    • Icon 生成器
    • 扩展图标模板
  • 基础
    • 起步
    • 创建您的第一个扩展
    • 贡献一个扩展
    • 过审一个扩展
    • 发布一个扩展
    • 调试一个扩展
    • 安装一个扩展
  • 团队
    • 开始
    • 发布私人扩展
    • 协作开发私有扩展
  • 例子
    • Doppler 共享 Secrets
    • Hacker News
    • Todo 列表
    • Spotify Controls
  • 资料
    • 最佳实践
    • 工具
      • CLI
      • ESLint
      • VS Code(社区工具)
    • 文件结构
    • 生命周期
      • 参数
      • 后台刷新
      • Deeplinks
    • Manifest
    • 安全性
    • 术语
    • 版本控制
  • API 参考
    • AI
    • Cache
    • Command
    • Clipboard
    • Environment
    • Feedback
      • Alert
      • HUD
      • Toast
    • Keyboard
    • Menu Bar Commands
    • OAuth
    • Preferences
    • Storage
    • System Utilities
    • 用户界面
      • Action Panel
      • Actions
      • Detail
      • Form
      • List
      • Grid
      • Colors
      • Icons & Images
      • Navigation
    • 窗口 & 搜索栏
  • 公共包
    • 起步
    • 功能
      • 执行 AppleScript
    • 图标
      • getAvatarIcon
      • getFavicon
      • getProgressIcon
    • React hooks
      • useCachedState
      • usePromise
      • useCachedPromise
      • useFetch
      • useForm
      • useExec
      • useSQL
      • useAI
  • 迁移
  • FAQ
由 GitBook 提供支持
在本页
  • API 参考
  • launchCommand
  • updateCommandMetadata
  • 类型
  • LaunchContext
  • LaunchOptions
  1. API 参考

Command

该公共包可与 Raycast 命令配合使用。

API 参考

launchCommand

启动另一个命令。如果该命令不存在,或者未启用,则会抛出错误。如果该命令是另一个扩展的一部分,则会向用户显示权限警报。如果您的命令需要根据用户交互打开另一个命令,或者要立即触发后台刷新(例如,当命令需要更新关联的菜单栏命令时),请使用此方法。

签名

export async function launchCommand(options: LaunchOptions): Promise<void>;

例子

import { launchCommand, LaunchType } from "@raycast/api";

export default async function Command() {
  await launchCommand({ name: "list", type: LaunchType.UserInitiated, context: { foo: "bar" } });
}

参数

名称
描述
类型

options*

context:自定义数据的任意对象,应传递给命令并可作为environment.launchContext访问;该对象必须是 JSON 可序列化的(支持日期和缓冲区)

返回

当命令启动时解析的 Promise。 (请注意,这并不表示启动的命令已完成执行。)

updateCommandMetadata

更新当前命令 manifest 中声明的​​属性值。请注意,目前仅支持 subtitle。传递 null 以清除自定义 subtitle。

实际的 manifest 文件不会被修改,因此只要命令保持安装状态,更新就会适用。

签名

export async function updateCommandMetadata(metadata: { subtitle?: string | null }): Promise<void>;

例子

import { updateCommandMetadata } from "@raycast/api";

async function fetchUnreadNotificationCount() {
  return 10;
}

export default async function Command() {
  const count = await fetchUnreadNotificationCount();
  await updateCommandMetadata({ subtitle: `Unread Notifications: ${count}` });
}

返回

当命令的元数据更新时解析的 Promise。

类型

LaunchContext

表示命令启动传递的上下文对象。

LaunchOptions

用于决定应启动哪个命令以及应接收哪些数据(参数、上下文)的参数对象。

IntraExtensionLaunchOptions

从同一扩展启动命令时可以使用的选项。

名称
描述
类型

name*

扩展 manifest 中定义的命令名称

string

type*

arguments

扩展 manifest 中定义的参数属性和值的可选对象,例如: { "argument1": "value1" }

context

应传递给命令并可作为environment.launchContext访问的自定义数据的任意对象;该对象必须是 JSON 可序列化的(支持日期和缓冲区)

fallbackText

作为备用文本发送到命令的可选字符串

string 或者 null

InterExtensionLaunchOptions

从不同扩展启动命令时可以使用的选项。

名称
描述
类型

extensionName*

从不同的扩展启动命令时,扩展名称(如扩展 manifest 中定义)是必需的

string

ownerOrAuthorName*

从不同的扩展程序启动命令时,所有者或作者(如扩展程序 manifest 中所定义)是必需的

string

上一页Cache下一页Clipboard

最后更新于1年前

具有以下属性的参数对象: name:扩展清单中定义的命令名称 type: 或 参数:扩展清单中定义的参数属性和值的可选对象,例如: { "argument1" : "value1" }

或者

或者 null

或者 null

LaunchType.UserInitiated
LaunchType.Background
LaunchOptions
LaunchContext
LaunchType.UserInitiated
LaunchType.Background
LaunchType
Arguments