配置
Tauri 配置对象。它从一个文件中读取,你可以在其中定义前端资源、配置打包器、启用应用更新程序、定义系统托盘、通过允许列表启用 API等等。
配置文件由位于 Tauri 应用程序源目录 (src-tauri) 中的 tauri init
命令生成。
生成后,您可以随意修改它来定制您的 Tauri 应用程序。
文件格式
默认情况下,配置定义为名为 tauri.conf.json
的 JSON 文件。
Tauri 分别通过 config-json5
和 config-toml
Cargo 功能支持 JSON5 和 TOML 文件。JSON5 文件名必须是 tauri.conf.json
或 tauri.conf.json5
。TOML 文件名为 Tauri.toml
。
特定平台的配置
除了默认配置文件外,Tauri 还可以从 tauri.linux.conf.json
、tauri.windows.conf.json
和 tauri.macos.conf.json
(如果使用 Tauri.toml
格式,则为 Tauri.linux.toml
、Tauri.windows.toml
和 Tauri.macos.toml
) 读取特定于平台的配置,这些配置将与主配置对象合并。
配置结构
配置由以下对象组成:
示例 tauri.config.json 文件
{
"build": {
"beforeBuildCommand": "",
"beforeDevCommand": "",
"devPath": "../dist",
"distDir": "../dist"
},
"package": {
"productName": "tauri-app",
"version": "0.1.0"
},
"tauri": {
"allowlist": {
"all": true
},
"bundle": {},
"security": {
"csp": null
},
"updater": {
"active": false
},
"windows": [
{
"fullscreen": false,
"height": 600,
"resizable": true,
"title": "Tauri App",
"width": 800
}
]
}
}
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
PackageConfig | 查看 | 包设置。 | |
TauriConfig | 查看 | Tauri 配置。 | |
BuildConfig | 查看 | 构建配置。 | |
PluginConfig | 查看 | 插件配置。 |
PackageConfig
包配置。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
string? | null | 应用名称。 | |
string? | null | 应用版本。它是一个语义化版本号或包含 version 字段的 package.json 文件的路径。如果删除了 Cargo.toml 中的版本号,则使用 Cargo.toml 中的版本号。 |
TauriConfig
Tauri 配置对象。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
PatternKind | 查看 | 要使用的模式。 | |
WindowConfig | [] | 窗口配置。 | |
CliConfig ? | 查看 | CLI 配置。 | |
BundleConfig | 查看 | 打包器配置。 | |
AllowlistConfig | 查看 | 允许列表配置。 | |
SecurityConfig | 查看 | 安全配置。 | |
UpdaterConfig | 查看 | 更新程序配置。 | |
SystemTrayConfig ? | 查看 | 应用系统托盘配置。 | |
boolean | false | MacOS 私有 API 配置。启用透明背景 API 并将 fullScreenEnabled 首选项设置为 true 。 |
PatternKind
应用程序模式。
可以是以下任何**一种**类型:
{ "use": "brownfield" }
:Brownfield 模式。名称 类型 默认值 描述 "brownfield" (必需) 未定义
{ "use": "isolation", "options": { "dir": string } }
:隔离模式。出于安全考虑,建议使用此模式。名称 类型 默认值 描述 "isolation" (必需) 未定义 { "dir": string } (必需) 未定义
WindowConfig
窗口配置对象。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
string | null | 窗口标识符。必须是字母数字的。 | |
WindowUrl | 查看 | 窗口 webview URL。 | |
string? | null | webview 的用户代理 | |
boolean | true | webview 上是否启用文件拖放。默认情况下启用。 在 Windows 上,必须禁用它才能在前端使用拖放。 | |
boolean | false | 窗口是否居中启动。 | |
number? *(格式:double )* | null | 窗口左上角的水平位置 | |
number? *(格式:double )* | null | 窗口左上角的垂直位置 | |
number *(格式:double )* | 800 | 窗口宽度。 | |
number *(格式:double )* | 600 | 窗口高度。 | |
number? *(格式:double )* | null | 最小窗口宽度。 | |
number? *(格式:double )* | null | 最小窗口高度。 | |
number? *(格式:double )* | null | 最大窗口宽度。 | |
number? *(格式:double )* | null | 最大窗口高度。 | |
boolean | true | 窗口是否可调整大小。当 resizable 设置为 false 时,本机窗口的最大化按钮会自动禁用。 | |
boolean | true | 窗口的本机最大化按钮是否启用。如果 resizable 设置为 false,则忽略此设置。 ## 特定平台 - **macOS:**禁用窗口标题栏中的“缩放”按钮,该按钮也用于进入全屏模式。 - **Linux / iOS / Android:**不支持。 | |
boolean | true | 窗口的本机最小化按钮是否启用。 ## 特定平台 - **Linux / iOS / Android:**不支持。 | |
boolean | true | 窗口的本机关闭按钮是否启用。 ## 特定平台 - **Linux:**“GTK+ 将尽力说服窗口管理器不要显示关闭按钮。根据系统不同,此功能在对已可见的窗口调用时可能没有任何效果” - **iOS / Android:**不支持。 | |
string | null | 窗口标题。 | |
boolean | false | 窗口是否以全屏模式启动。 | |
boolean | true | 窗口是否会最初获得焦点。 | |
boolean | false | 窗口是否透明。 请注意,在 macOS 上,这需要 macos-private-api 功能标志,在 tauri > macOSPrivateApi 下启用。警告:在 macOS 上使用私有 API 会阻止您的应用程序被 App Store 接受。 | |
boolean | false | 窗口是否最大化。 | |
boolean | true | 窗口是否可见。 | |
boolean | true | 窗口是否应该有边框和栏。 | |
boolean | false | 窗口是否应该始终位于其他窗口之上。 | |
boolean | false | 防止窗口内容被其他应用捕获。 | |
boolean | false | 如果设置为true ,则在 Windows 和 Linux 系统上隐藏任务栏中的窗口图标。 | |
主题 ? | 查看 | 初始窗口主题。默认为系统主题。仅在 Windows 和 macOS 10.14+ 上实现。 | |
标题栏样式 | 查看 | macOS 标题栏的样式。 | |
boolean | false | 如果设置为true ,则将 macOS 上的窗口标题设置为隐藏。 | |
boolean | false | 在 macOS 上,点击非活动窗口是否也会点击到 webview。 | |
string? | null | 定义 macOS 窗口的tabbing 标识符。 具有匹配 tabbing 标识符的窗口将分组在一起。如果未设置 tabbing 标识符,则会禁用自动 tabbing。 | |
string? | null | 定义 Windows 上的其他浏览器参数。默认情况下,wry 传递--disable-features=msWebOOUI,msPdfOOUI,msSmartScreenProtection ,因此如果您使用此方法,则如果需要,也需要自行禁用这些组件。 |
WindowUrl
在 Tauri webview 窗口中打开的 URL。
可以是以下任何类型
string
(格式:uri
): 外部 URL。string
: 应用 URL 的路径部分。例如,要加载tauri://127.0.0.1/users/john
,您只需在此配置中提供users/john
。
主题
系统主题。
可以是以下任何**一种**类型:
- "浅色": 浅色主题。
- "深色": 深色主题。
标题栏样式
macOS 上窗口标题栏的显示方式。
可以是以下任何**一种**类型:
"可见": 正常的标题栏。
"透明": 使标题栏透明,从而显示窗口背景颜色。
如果您不需要在标题栏下实际显示 HTML,则此选项很有用。这使您可以避免使用
TitleBarStyle::Overlay
时的注意事项。当 Tauri 允许您设置自定义窗口背景颜色时,这将更有用。"叠加": 将标题栏显示为窗口内容之上的透明叠加层。
请注意
标题栏的高度在不同的操作系统版本上有所不同,这可能导致窗口控件和标题不在您预期的位置。
您需要定义一个自定义拖动区域才能使您的窗口可拖动,但是由于限制,当窗口未处于焦点时,您无法拖动窗口 https://github.com/tauri-apps/tauri/issues/4316。
窗口标题的颜色取决于系统主题。
CliConfig
描述 CLI 配置
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
string? | null | 将在帮助信息中显示的命令描述。 | |
string? | null | 将在帮助信息中显示的命令详细描述。 | |
string? | null | 添加除了自动生成的帮助之外的附加帮助信息。此信息显示在自动生成的帮助信息之前。这通常用于标题信息。 | |
string? | null | 添加除了自动生成的帮助之外的附加帮助信息。此信息显示在自动生成的帮助信息之后。这通常用于描述如何使用参数或需要注意的注意事项。 | |
CliArg ? | null | 命令的参数列表 | |
CliConfig ? | null | 此命令的子命令列表 |
CliArg
CLI 参数定义。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
string? | null | 参数的简写版本,不包括前面的 -。 注意:任何前导 - 字符都将被删除,并且只有第一个非字符将用作简写版本。 | |
字符串(必需) | 唯一的参数名称 | ||
string? | null | 将在帮助信息中显示的参数描述。通常,这是参数的简短(一行)描述。 | |
string? | null | 将在帮助信息中显示的参数详细描述。通常,这是一个更详细的(多行)消息,用于描述参数。 | |
boolean | false | 指定参数在运行时接受值。 注意:参数的值可以使用以下任何方法指定 - 使用空格,例如 -o value 或 --option value - 使用等号且不使用空格,例如 -o=value 或 --option=value - 使用简写且不使用空格,例如 -ovalue | |
boolean | false | 指定参数可以具有多个未知数量的值。没有任何其他设置,此参数只能出现一次。 例如,允许 --opt val1 val2,但不允许 --opt val1 val2 --opt val3。 注意:设置此选项需要将 takes_value 设置为 true。 | |
boolean | false | 指定参数可以出现多次。对于标志,这会导致记录标志出现的次数。例如 -ddd 或 -d -d -d 将计为三次出现。对于接受值的选项或参数,这不会影响它们可以接受多少值。(即一次只允许一个) 例如,允许 --opt val1 --opt val2,但不允许 --opt val1 val2。 | |
整数? (格式: uint ) | null | 指定满足此参数所需的值的数量。例如,如果您有一个-f <file> 参数,您需要正好 3 个“文件”,您将设置number_of_values = 3 ,并且除非用户提供 3 个且只有 3 个值,否则此参数将不会得到满足。注意:不需要设置 multiple_occurrences = true 。设置multiple_occurrences = true 将允许-f <file> <file> <file> -f <file> <file> <file> ,而不设置它将只允许此参数出现一次。注意:隐式地设置 takes_value = true 和multiple_values = true 。 | |
数组? | null | 指定此参数可能的列表值。在运行时,CLI 验证只使用指定值中的一个,否则会显示错误消息。 | |
整数? (格式: uint ) | null | 指定此参数的最小值数量。例如,如果您有一个 -f <file> 参数,您至少需要 2 个“文件”,您将设置minValues: 2 ,如果用户提供了 2 个或更多值,则此参数将得到满足。 | |
整数? (格式: uint ) | null | 指定此参数的最大值数量。例如,如果您有一个 -f <file> 参数,您最多需要 3 个“文件”,您将设置 .max_values(3),如果用户提供了 1、2 或 3 个值,则此参数将得到满足。 | |
boolean | false | 设置参数是否默认必需。 - 默认必需表示在没有其他冲突规则被评估的情况下它是必需的。 - 冲突规则优先于必需。 | |
string? | null | 设置覆盖此参数 required 设置的参数,即除非此其他参数存在,否则此参数是必需的。 | |
数组? | null | 设置覆盖此参数 required 设置的参数,即除非所有这些其他参数都存在,否则此参数是必需的。 | |
数组? | null | 设置覆盖此参数 required 设置的参数,即除非至少存在这些其他参数中的一个,否则此参数是必需的。 | |
string? | null | 按名称设置冲突参数,即使用此参数时,以下参数不能存在,反之亦然。 | |
数组? | null | 与 conflictsWith 相同,但允许为每个参数指定多个双向冲突。 | |
string? | null | 测试当此参数存在时所需的参数名称,即使用此参数时,以下参数必须存在。 | |
数组? | null | 按名称设置多个参数,当此参数存在时这些参数是必需的,即使用此参数时,以下参数必须存在。 | |
数组? | null | 允许使用以下签名的条件需求[arg, value]只有当arg 的值等于${value} 时,此需求才有效。 | |
数组? | null | 允许指定参数的条件需求,签名如下:[arg, value]只有当arg 的值等于${value} 时,此需求才有效。 | |
布尔值? | null | 要求选项使用 --option=val 语法,即选项和关联值之间使用等号。 | |
整数? (格式: uint , 最小值: 1 ) | null | 位置参数索引,从 1 开始。 索引指的是相对于其他位置参数的位置。它不定义参数列表中的整体位置。当与 multiple=true 一起使用时,只有最后一个位置参数可以定义为多个(即索引最高的那个)。 |
BundleConfig
tauri-bundler 的配置。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
boolean | false | Tauri 是否应该打包您的应用程序或只输出可执行文件。 | |
BundleTarget | 查看 | 捆绑目标,目前支持["deb", "rpm", "appimage", "nsis", "msi", "app", "dmg", "updater"]或 "all"。 | |
字符串(必需) | 反向域名表示法中的应用程序标识符(例如com.tauri.example )。此字符串在应用程序中必须唯一,因为它用于系统配置,例如捆绑包 ID 和 webview 数据目录的路径。此字符串必须只包含字母数字字符(A-Z、a-z 和 0-9)、连字符 (-) 和句点 (.)。 | ||
string? | null | 应用程序的发布者。默认为标识符字符串中的第二个元素。目前映射到 Windows Installer 的 Manufacturer 属性。 | |
string[] | [] | 应用程序的图标 | |
BundleResources ? | 查看 | 要捆绑的应用程序资源。每个资源都是指向文件或目录的路径。支持通配符模式。 | |
string? | null | 与您的应用程序关联的版权字符串。 | |
string? | null | 应用程序类型。 应为以下之一:商务、开发者工具、教育、娱乐、金融、游戏、动作游戏、冒险游戏、街机游戏、棋盘游戏、纸牌游戏、赌场游戏、骰子游戏、益智游戏、家庭游戏、儿童游戏、音乐游戏、益智游戏、赛车游戏、角色扮演游戏、模拟游戏、体育游戏、策略游戏、琐事游戏、文字游戏、图形和设计、医疗保健和健身、生活方式、医疗、音乐、新闻、摄影、生产力、参考、社交网络、体育、旅游、实用工具、视频、天气。 | |
string? | null | 应用程序的简短描述。 | |
string? | null | 应用程序的较长、多行描述。 | |
boolean | false | 是否使用项目的target 目录缓存构建工具(例如:Wix 和 NSIS)来构建此应用程序。默认为false 。如果为 true,则工具将缓存到 target\.tauri-tools 。如果为 false,则工具将缓存到当前用户的平台特定缓存目录。将其设置为 true 的示例场景是在将此应用程序作为 Windows 系统用户(例如:AWS EC2 工作负载)进行构建时,因为 Windows 系统的应用程序数据目录是受限制的。 | |
AppImageConfig | 查看 | AppImage 包的配置。 | |
DebConfig | 查看 | Debian 包的配置。 | |
RpmConfig | 查看 | RPM 包的配置。 | |
DmgConfig | 查看 | DMG 特定设置。 | |
MacConfig | 查看 | macOS 包的配置。 | |
数组? | null | 要与您的应用程序一起嵌入的二进制文件的绝对或相对路径列表。 请注意,Tauri 将按照模式“binary-name{-target-triple}{.system-extension}”查找特定于系统的二进制文件。 例如,对于外部二进制文件“my-binary”,Tauri 将查找: - Windows: “my-binary-x86_64-pc-windows-msvc.exe” - macOS: “my-binary-x86_64-apple-darwin” - Linux: “my-binary-x86_64-unknown-linux-gnu” 因此,请不要忘记为所有目标平台提供二进制文件。 | |
WindowsConfig | 查看 | Windows 包的配置。 |
BundleTarget
要捆绑的目标。每个值都不区分大小写。
可以是以下任何类型
"all"
:捆绑所有目标。BundleType
:捆绑目标列表。BundleType
:单个捆绑目标。
BundleType
tauri-bundler 引用的捆绑包。
可以是以下任何**一种**类型:
- "deb":Debian 包(.deb)。
- "rpm":RPM 包(.rpm)。
- "appimage":AppImage 包(.appimage)。
- "msi":Microsoft Installer 包(.msi)。
- "nsis":NSIS 包(.exe)。
- "app":macOS 应用程序包(.app)。
- "dmg":Apple 磁盘映像包(.dmg)。
- "updater":Tauri 更新程序包。
BundleResources
捆绑资源的定义。可以是包含路径的列表,也可以是源到目标路径的映射。
可以是以下任何类型
string[]
:要包含的路径列表。object
:源到目标路径的映射。
AppImageConfig
AppImage 包的配置。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
boolean | false | 包含音频和视频播放所需的额外 gstreamer 依赖项。这会根据您的构建系统增加大约 15-35MB 的包大小。 |
DebConfig
Debian(.deb)包的配置。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
数组? | null | 您的应用程序依赖的 deb 依赖项列表。 | |
数组? | null | 该包提供的依赖项列表。 | |
数组? | null | 包冲突列表。 | |
数组? | null | 包替换列表。 | |
object | null | 要包含在包中的文件。 | |
string? | null | 自定义桌面文件 Handlebars 模板的路径。 可用变量: categories 、comment (可选)、exec 、icon 和 name 。 | |
string? | null | 定义 Debian Control 文件中的节。请参见:https://www.debian.org/doc/debian-policy/ch-archive.html#s-subsections | |
string? | null | 更改 Debian 包的优先级。默认情况下,它设置为optional 。目前识别的优先级为:required 、important 、standard 、optional 、extra | |
string? | null | 未压缩的变更日志文件的路径,将存储在 /usr/share/doc/package-name/changelog.gz。请参见 https://www.debian.org/doc/debian-policy/ch-docs.html#changelog-files-and-release-notes |
RpmConfig
RPM 包的配置。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
string? | null | 包的许可证标识符。如果未设置,则默认为 Cargo.toml 文件中的许可证。 | |
数组? | null | 您的应用程序依赖的 RPM 依赖项列表。 | |
数组? | null | 您的应用程序提供的 RPM 依赖项列表。 | |
数组? | null | 您的应用程序与之冲突的 RPM 依赖项列表。为了安装包,这些依赖项必须不存在。 | |
数组? | null | 您的应用程序取代的 RPM 依赖项列表 - 如果安装了此包,“obsoletes”中列出的包将被自动删除(如果存在)。 | |
string | null | RPM 发行版标签。 | |
整数 (格式:uint32 ) | 0 | RPM纪元。 | |
object | null | 要包含在包中的文件。 | |
string? | null | 自定义桌面文件 Handlebars 模板的路径。 可用变量: categories 、comment (可选)、exec 、icon 和 name 。 |
DmgConfig
Apple 磁盘映像(.dmg)包的配置。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
string? | null | 用作 dmg 文件背景的图像。接受的格式:png /jpg /gif 。 | |
位置 ? | 查看 | 屏幕上卷窗的位置。 | |
大小 | 查看 | 卷窗的大小。 | |
位置 | 查看 | 应用程序文件在窗口中的位置。 | |
位置 | 查看 | 应用程序文件夹在窗口中的位置。 |
Position
位置坐标结构。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
整数 (格式:uint32 ) (必需) | X 坐标。 | ||
整数 (格式:uint32 ) (必需) | Y 坐标。 |
Size
窗口的大小。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
整数 (格式:uint32 ) (必需) | 窗口的宽度。 | ||
整数 (格式:uint32 ) (必需) | 窗口的高度。 |
MacConfig
macOS 包的配置。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
数组? | null | 指示需要与应用程序捆绑在一起的任何 macOS X 框架的字符串列表。 如果使用名称,则必须省略“.framework”,它将查找标准安装位置。您也可以使用特定框架的路径。 | |
string? | null | 指示捆绑的应用程序支持的最低 macOS X 版本的版本字符串。默认为10.13 。将其设置为 null 将完全删除包的Info.plist 上的LSMinimumSystemVersion 字段和MACOSX_DEPLOYMENT_TARGET 环境变量。空字符串被认为是无效值,因此使用默认值。 | |
string? | null | 允许您的应用程序与外部世界通信。它应该是小写的,不包含端口和协议域名。 | |
string? | null | 要添加到 DMG 包中的许可证文件的路径。 | |
string? | null | 用于代码签名的身份。 | |
boolean | true | 代码签名是否启用强化运行时(对于可执行文件)或不启用。 | |
string? | null | 用于公证的提供商简称。 | |
string? | null | 权利文件路径。 |
WindowsConfig
Windows打包器配置。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
string? | null | 指定用于创建文件签名的文件摘要算法。代码签名需要此项。推荐使用SHA-256。 | |
string? | null | 指定签名证书的SHA1哈希值。 | |
string? | null | 时间戳服务器地址。 | |
boolean | false | 是否使用时间戳协议 (TSP,即 RFC 3161) 与时间戳服务器交互。您的代码签名提供商可能使用TSP时间戳服务器,例如SSL.com。如果是这样,请将此值设置为true以启用TSP。 | |
WebviewInstallMode | 查看 | Webview2运行时的安装模式。 | |
string? | null | 要使用的Webview固定运行时路径。如果设置此值,则会覆盖webview_install_mode 。将在v2版本中移除,建议使用 webview_install_mode 选项。可在官方网站下载固定版本。必须将 .cab 文件解压到一个文件夹中,并将此文件夹路径定义在此字段中。 | |
boolean | true | 验证第二个应用程序安装,如果设置为false ,则阻止用户安装旧版本。例如,如果已安装 1.2.1 版本,则用户将无法安装1.2.0 或1.1.5 版本。此标志的默认值为 true 。 | |
WixConfig ? | 查看 | 使用WiX生成的MSI安装包的配置。 | |
NsisConfig ? | 查看 | 使用NSIS生成的安装程序的配置。 | |
string? | null | 指定自定义命令来签名二进制文件。此命令需要包含%1 ,这是一个占位符,用于表示二进制文件的路径,我们在调用命令之前会检测并替换它。示例: text sign-cli --arg1 --arg2 %1 默认情况下,我们使用 signtool.exe ,它只在Windows系统上可用,因此如果您在其他平台上进行交叉编译和签名,则需要使用其他工具,例如osslsigncode 。 |
WebviewInstallMode
Webview2运行时的安装模式。请注意,对于更新程序包,使用的是DownloadBootstrapper
。
更多信息请参见https://tauri.org.cn/v1/guides/building/windows。
可以是以下任何**一种**类型:
{ "type": "skip" }
: 不安装Webview2作为Windows安装程序的一部分。名称 类型 默认值 描述 "skip" (必填) 未定义
{ "type": "downloadBootstrapper", "silent": boolean }
: 下载并运行引导程序。需要网络连接。安装程序体积更小,但不推荐在Windows 7上使用。名称 类型 默认值 描述 "downloadBootstrapper" (必填) 未定义 boolean true
指示安装程序以静默模式运行引导程序。默认为 true
。
{ "type": "embedBootstrapper", "silent": boolean }
: 嵌入并运行引导程序。需要网络连接。安装程序体积增加约1.8MB,但在Windows 7上提供更好的支持。名称 类型 默认值 描述 "embedBootstrapper" (必填) 未定义 boolean true
指示安装程序以静默模式运行引导程序。默认为 true
。
{ "type": "offlineInstaller", "silent": boolean }
: 嵌入并运行离线安装程序。不需要网络连接。安装程序体积增加约127MB。名称 类型 默认值 描述 "offlineInstaller" (必填) 未定义 boolean true
指示安装程序以静默模式运行安装程序。默认为 true
。
{ "type": "fixedRuntime", "path": string }
: 嵌入固定版本的webview2并在运行时使用它。安装程序体积增加约180MB。名称 类型 默认值 描述 "fixedRuntime" (必填) 未定义 字符串(必需) 要使用的固定运行时路径。
可在官方网站下载固定版本。必须将.cab
文件解压到一个文件夹中,并将此文件夹路径定义在此字段中。
WixConfig
使用WiX的MSI包的配置。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
WixLanguage | 查看 | 要构建的安装程序语言。参见https://docs.microsoft.com/en-us/windows/win32/msi/localizing-the-error-and-actiontext-tables。 | |
string? | null | 要使用的自定义.wxs模板。 | |
string[] | [] | 要使用的包含WiX片段的.wxs文件的路径列表。 | |
string[] | [] | 要从片段中引用的ComponentGroup元素ID。 | |
string[] | [] | 要从片段中引用的Component元素ID。 | |
string[] | [] | 要从片段中引用的FeatureGroup元素ID。 | |
string[] | [] | 要从片段中引用的Feature元素ID。 | |
string[] | [] | 要从片段中引用的Merge元素ID。 | |
boolean | false | 禁用应用程序安装后的Webview2运行时安装。 将在v2版本中移除,建议使用[ WindowsConfig::webview_install_mode ]选项。 | |
string? | null | 要在安装程序中渲染的许可证文件路径。 必须是RTF文件,如果提供的是其他扩展名,我们将将其转换为RTF格式。 | |
boolean | false | 在Windows任务计划程序中创建一个提升权限的更新任务。 | |
string? | null | 用作安装程序用户界面横幅的位图文件路径。此位图将出现在除安装程序第一页之外的所有页面的顶部。 所需尺寸为493px × 58px。 | |
string? | null | 用在安装程序用户界面对话框的位图文件路径。它用于欢迎和完成对话框。所需尺寸为493px × 312px。 |
WixLanguage
使用WiX构建的语言。
可以是以下任何类型
string
: 要构建的单一语言,无需配置。string[]
: 要构建的语言列表,无需配置。WixLanguageConfig
: 语言及其配置的映射。
WixLanguageConfig
WiX构建的目标语言的配置。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
string? | null | 区域设置(.wxl )文件的路径。参见https://wixtoolset.org/documentation/manual/v3/howtos/ui_and_localization/build_a_localized_version.html。 |
NsisConfig
使用NSIS的安装程序包的配置。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
string? | null | 要使用的自定义.nsi模板。 | |
string? | null | 要在安装程序中渲染的许可证文件路径。 | |
string? | null | 要在安装程序页面标题中显示的位图文件路径。 推荐尺寸为150px x 57px。 | |
string? | null | 欢迎页面和完成页面的位图文件路径。 推荐尺寸为164px x 314px。 | |
string? | null | 用作安装程序图标的图标文件路径。 | |
NSISInstallerMode | 查看 | 安装程序是针对所有用户还是仅针对当前用户。 | |
数组? | null | 安装程序语言列表。默认情况下使用操作系统语言。如果操作系统语言不在语言列表中,则使用第一种语言。要允许用户选择语言,请将display_language_selector 设置为true 。完整的语言列表,请参见https://github.com/kichik/nsis/tree/9465c08046f00ccb6eda985abbdbf52c275c6c4d/Contrib/Language%20files。 | |
object? | null | 键值对,其中键是语言,值是包含Tauri自定义消息的翻译文本的自定义.nsh 文件路径。示例 .nsh 文件,请参见https://github.com/tauri-apps/tauri/blob/dev/tooling/bundler/src/bundle/windows/templates/nsis-languages/English.nsh。注意:键必须是有效的NSIS语言,并且必须添加到[ NsisConfig ]语言数组中。 | |
boolean | false | 是否在渲染安装程序和卸载程序窗口之前显示语言选择对话框。默认情况下选择操作系统语言,如果操作系统语言不在languages 数组中,则使用第一个语言。 | |
NsisCompression ? | 查看 | 设置用于压缩安装程序中文件的压缩算法。 参见https://nsis.sourceforge.io/Reference/SetCompressor |
NSISInstallerMode
NSIS 安装程序的安装模式。
可以是以下任何**一种**类型:
"currentUser": 安装程序的默认模式。
默认情况下,将应用程序安装在不需要管理员权限的目录中。
安装程序元数据将保存在HKCU
注册表路径下。
"perMachine": 默认情况下,将应用程序安装在
Program Files
文件夹目录中,安装需要管理员权限。安装程序元数据将保存在
HKLM
注册表路径下。"both": 结合了两种模式,允许用户在安装时选择是为当前用户安装还是为所有用户安装。请注意,即使用户只想为当前用户安装,此模式也需要管理员权限。
安装程序元数据将根据用户的选择保存在
HKLM
或HKCU
注册表路径下。
NsisCompression
NSIS 安装程序中使用的压缩算法。
参见https://nsis.sourceforge.io/Reference/SetCompressor
可以是以下任何**一种**类型:
- "zlib": ZLIB 使用 deflate 算法,这是一种快速简单的压缩方法。使用默认压缩级别时,它大约使用 300 KB 的内存。
- "bzip2": BZIP2 通常比 ZLIB 提供更好的压缩比,但速度较慢且内存消耗更多。使用默认压缩级别时,它大约使用 4 MB 的内存。
- "lzma": LZMA(默认)是一种新的压缩方法,可以提供非常好的压缩比。解压缩速度很快(在 2 GHz CPU 上为 10-20 MB/s),压缩速度较慢。用于解压缩的内存大小为字典大小加几 KB,默认为 8 MB。
AllowlistConfig
允许列表配置。允许列表是对Cargo 允许列表功能的翻译。
备注
- 没有自己允许列表选项的端点默认情况下是启用的。
- 只有“选择加入”,没有“选择退出”。将选项设置为
false
无效。
示例
"app-all": true
将使hide 端点可用,而不管允许列表中hide
设置为false
还是true
。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
boolean | false | 使用此标志启用所有 API 功能。 | |
FsAllowlistConfig | 查看 | 文件系统 API 允许列表。 | |
WindowAllowlistConfig | 查看 | 窗口 API 允许列表。 | |
ShellAllowlistConfig | 查看 | Shell API 允许列表。 | |
DialogAllowlistConfig | 查看 | 对话框 API 允许列表。 | |
HttpAllowlistConfig | 查看 | HTTP API 允许列表。 | |
NotificationAllowlistConfig | 查看 | 通知 API 允许列表。 | |
GlobalShortcutAllowlistConfig | 查看 | 全局快捷键 API 允许列表。 | |
OsAllowlistConfig | 查看 | 操作系统允许列表。 | |
PathAllowlistConfig | 查看 | 路径 API 允许列表。 | |
ProtocolAllowlistConfig | 查看 | 自定义协议允许列表。 | |
ProcessAllowlistConfig | 查看 | 进程 API 允许列表。 | |
ClipboardAllowlistConfig | 查看 | 剪贴板 API 允许列表。 | |
AppAllowlistConfig | 查看 | 应用 API 允许列表。 |
FsAllowlistConfig
文件系统 API 的允许列表。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
FsAllowlistScope | [] | 文件系统 API 的访问范围。 | |
boolean | false | 使用此标志启用所有文件系统 API 功能。 | |
boolean | false | 从本地文件系统读取文件。 | |
boolean | false | 将文件写入本地文件系统。 | |
boolean | false | 从本地文件系统读取目录。 | |
boolean | false | 从本地文件系统复制文件。 | |
boolean | false | 在本地文件系统中创建目录。 | |
boolean | false | 从本地文件系统中删除目录。 | |
boolean | false | 从本地文件系统中删除文件。 | |
boolean | false | 重命名本地文件系统中的文件。 | |
boolean | false | 检查路径是否存在于本地文件系统上。 |
FsAllowlistScope
文件系统范围定义。它是一个 glob 模式列表,用于限制 webview 的 API 访问。
每个模式都可以以一个变量开头,该变量解析为系统基本目录。这些变量是:$AUDIO
、$CACHE
、$CONFIG
、$DATA
、$LOCALDATA
、$DESKTOP
、$DOCUMENT
、$DOWNLOAD
、$EXE
、$FONT
、$HOME
、$PICTURE
、$PUBLIC
、$RUNTIME
、$TEMPLATE
、$VIDEO
、$RESOURCE
、$APP
、$LOG
、$TEMP
、$APPCONFIG
、$APPDATA
、$APPLOCALDATA
、$APPCACHE
、$APPLOG
。
可以是以下任何类型
string[]
:此范围允许的路径列表。{ "allow": string[], "deny": string[], "requireLiteralLeadingDot": boolean? }
:完整的范围配置。名称 类型 默认值 描述 string[] [] 此范围允许的路径列表。 string[] [] 此范围不允许的路径列表。这优先于 Scope::allow
列表。布尔值? null 是否包含以 .
开头的组件的路径将要求.
在模式中逐字出现;*
、?
、**
或[...]
将不匹配。这很有用,因为这些文件通常在 Unix 系统上被认为是隐藏文件,并且在列出文件时可能需要跳过它们。
在 Unix 系统上默认为true
,在 Windows 上默认为false
。
WindowAllowlistConfig
窗口 API 的允许列表。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
boolean | false | 使用此标志启用所有窗口 API 功能。 | |
boolean | false | 允许动态创建窗口。 | |
boolean | false | 允许居中窗口。 | |
boolean | false | 允许请求窗口的用户关注。 | |
boolean | false | 允许设置窗口的可调整大小标志。 | |
boolean | false | 允许设置窗口的本机最大化按钮是否启用。 | |
boolean | false | 允许设置窗口的本机最小化按钮是否启用。 | |
boolean | false | 允许设置窗口的本机关闭按钮是否启用。 | |
boolean | false | 允许更改窗口标题。 | |
boolean | false | 允许最大化窗口。 | |
boolean | false | 允许取消最大化窗口。 | |
boolean | false | 允许最小化窗口。 | |
boolean | false | 允许取消最小化窗口。 | |
boolean | false | 允许显示窗口。 | |
boolean | false | 允许隐藏窗口。 | |
boolean | false | 允许关闭窗口。 | |
boolean | false | 允许设置窗口的装饰标志。 | |
boolean | false | 允许设置窗口的始终置顶标志。 | |
boolean | false | 允许防止窗口内容被其他应用程序捕获。 | |
boolean | false | 允许设置窗口大小。 | |
boolean | false | 允许设置窗口最小大小。 | |
boolean | false | 允许设置窗口最大大小。 | |
boolean | false | 允许更改窗口的位置。 | |
boolean | false | 允许设置窗口的全屏标志。 | |
boolean | false | 允许聚焦窗口。 | |
boolean | false | 允许更改窗口图标。 | |
boolean | false | 允许设置窗口的 skip_taskbar 标志。 | |
boolean | false | 允许抓取光标。 | |
boolean | false | 允许设置光标可见性。 | |
boolean | false | 允许更改光标图标。 | |
boolean | false | 允许设置光标位置。 | |
boolean | false | 允许忽略光标事件。 | |
boolean | false | 允许开始拖动窗口。 | |
boolean | false | 允许打开系统对话框以打印窗口内容。 |
ShellAllowlistConfig
Shell API 的允许列表。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
ShellAllowlistScope | [] | 二进制执行 API 的访问范围。侧边栏自动启用。 | |
boolean | false | 使用此标志启用所有 shell API 功能。 | |
boolean | false | 启用二进制执行。 | |
boolean | false | 启用侧边栏执行,允许 JavaScript 层生成侧边栏命令,即与应用程序一起提供的可执行文件。更多信息请参见https://tauri.org.cn/v1/guides/building/sidecar。 | |
ShellAllowlistOpen | false | 使用用户的默认应用程序打开 URL。 |
ShellAllowlistScope
Shell 作用域定义。它是一个命令名称和关联的 CLI 参数列表,用于限制来自 webview 的 API 访问。
ShellAllowedCommand
webview API 允许执行的命令。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
字符串(必需) | 此允许的 shell 命令配置的名称。 此名称将在 webview API 中用于调用此命令以及任何指定的参数。 | ||
string | null | 命令名称。它可以以解析为系统基目录的变量开头。变量包括:$AUDIO 、$CACHE 、$CONFIG 、$DATA 、$LOCALDATA 、$DESKTOP 、$DOCUMENT 、$DOWNLOAD 、$EXE 、$FONT 、$HOME 、$PICTURE 、$PUBLIC 、$RUNTIME 、$TEMPLATE 、$VIDEO 、$RESOURCE 、$APP 、$LOG 、$TEMP 、$APPCONFIG 、$APPDATA 、$APPLOCALDATA 、$APPCACHE 、$APPLOG 。 | |
ShellAllowedArgs | false | 命令执行允许的参数。 | |
boolean | false | 如果此命令是 sidecar 命令。 |
ShellAllowedArgs
webview API 允许执行的一组命令参数。
true
值允许将任何参数传递给命令。false
将禁用所有参数。一组[ShellAllowedArg
]将设置这些参数作为唯一有效的参数,传递给附加的命令配置。
可以是以下任何类型
boolean
:使用简单的布尔值来允许或禁用此命令配置的所有参数。ShellAllowedArg
:一组特定的[ShellAllowedArg
]对命令配置有效。
ShellAllowedArg
webview API 允许执行的命令参数。
可以是以下任何类型
string
:按指定顺序传递给命令的不可配置参数。{ "validator": string }
:从 webview API 调用命令时设置的变量。名称 类型 默认值 描述 字符串(必需) regex 验证器,要求传递的值符合预期的输入。
这将要求传递给此变量的参数值与validator
正则表达式匹配,然后才能执行。
ShellAllowlistOpen
定义shell > open
api 作用域。
可以是以下任何类型
boolean
:是否应启用 shell open API。如果启用,则使用默认验证正则表达式 (
^((mailto:\w+)|(tel:\w+)|(https?://\w+)).+
)。string
:启用 shell open API,并使用打开的路径必须与其匹配的自定义正则表达式。如果使用自定义正则表达式来支持非 http(s) 模式,则应注意防止允许标志式字符串通过验证的值。例如:
--enable-debugging
、-i
、/R
。
DialogAllowlistConfig
对话框 API 的允许列表。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
boolean | false | 使用此标志启用所有对话框 API 功能。 | |
boolean | false | 允许 API 打开一个对话框窗口来选择文件。 | |
boolean | false | 允许 API 打开一个对话框窗口来选择保存文件的位置。 | |
boolean | false | 允许 API 显示消息对话框窗口。 | |
boolean | false | 允许 API 显示带有“是/否”按钮的对话框窗口。 | |
boolean | false | 允许 API 显示带有“确定/取消”按钮的对话框窗口。 |
HttpAllowlistConfig
HTTP API 的允许列表。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
HttpAllowlistScope | [] | HTTP API 的访问范围。 | |
boolean | false | 使用此标志启用所有 HTTP API 功能。 | |
boolean | false | 允许发出 HTTP 请求。 |
HttpAllowlistScope
HTTP API 作用域定义。它是一个 URL 列表,使用 HTTP API 时,webview 可以访问这些 URL。使用 glob 模式将作用域 URL 与请求 URL 进行匹配。
示例
- "https://*": 允许所有 HTTPS url
- "https://*.github.com/tauri-apps/tauri": 允许 "github.com" 的任何子域名,路径为 "tauri-apps/api"
- "https://myapi.service.com/users/*": 允许访问以"https://myapi.service.com/users/" 开头的任何 URL
类型:string _(format:
uri)_[]
NotificationAllowlistConfig
通知 API 的允许列表。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
boolean | false | 使用此标志启用所有通知 API 功能。 |
GlobalShortcutAllowlistConfig
全局快捷键 API 的允许列表。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
boolean | false | 使用此标志启用所有全局快捷键 API 功能。 |
OsAllowlistConfig
操作系统 API 的允许列表。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
boolean | false | 使用此标志启用所有操作系统 API 功能。 |
PathAllowlistConfig
路径 API 的允许列表。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
boolean | false | 使用此标志启用所有路径 API 功能。 |
ProtocolAllowlistConfig
自定义协议的允许列表。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
FsAllowlistScope | [] | 资产协议的访问范围。 | |
boolean | false | 使用此标志启用所有自定义协议。 | |
boolean | false | 启用资产协议。 |
ProcessAllowlistConfig
进程 API 的允许列表。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
boolean | false | 使用此标志启用所有进程 API。 | |
boolean | false | 启用重新启动 API。 | |
boolean | false | 危险选项,即使二进制文件包含符号链接,也允许 macOS 重新启动。 这是因为 macOS 的符号链接保护较少。强烈建议除非您有非常具体的理由并且理解其含义,否则不要设置此标志。 | |
boolean | false | 启用退出 API。 |
ClipboardAllowlistConfig
剪贴板 API 的允许列表。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
boolean | false | 使用此标志启用所有剪贴板 API。 | |
boolean | false | 启用剪贴板的writeText API。 | |
boolean | false | 启用剪贴板的readText API。 |
AppAllowlistConfig
应用程序 API 的允许列表。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
boolean | false | 使用此标志启用所有应用程序 API。 | |
boolean | false | 启用应用程序的show API。 | |
boolean | false | 启用应用程序的hide API。 |
SecurityConfig
安全配置。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
Csp ? | 查看 | 将注入到构建应用程序中所有 HTML 文件的内容安全策略。如果未指定dev_csp ,则此值也会注入到开发环境中。这是配置中非常重要的一部分,因为它可以帮助您确保 WebView 的安全性。请参阅 https://mdn.org.cn/en-US/docs/Web/HTTP/CSP。 | |
Csp ? | 查看 | 将注入到开发环境中所有 HTML 文件的内容安全策略。 这是配置中非常重要的一部分,因为它可以帮助您确保 WebView 的安全性。请参阅 https://mdn.org.cn/en-US/docs/Web/HTTP/CSP。 | |
boolean | false | 使用自定义协议时冻结Object.prototype 。 | |
DisabledCspModificationKind | false | 禁用 Tauri 注入的 CSP 源。 在编译时,Tauri 会解析所有前端资产并将内容安全策略更改为仅允许加载您自己的脚本和样式,方法是注入 nonce 和哈希源。这会严格限制您的 CSP,这在与其他灵活的源一起使用时可能会导致问题。 此配置选项允许布尔值和字符串列表作为值。布尔值指示 Tauri 禁用所有 CSP 注入的注入,而字符串列表指示 Tauri 无法注入的 CSP 指令。 警告: 只有在您知道自己在做什么并且已正确配置 CSP 时才禁用此选项。如果没有此 Tauri 保护,您的应用程序可能会容易受到 XSS 攻击。 | |
RemoteDomainAccessScope | [] | 允许外部域名向 Tauri 发送命令。 默认情况下,外部域名无权访问 window.__TAURI__ ,这意味着它们无法与 Rust 中定义的命令通信。这可以防止攻击,在这些攻击中,外部加载的恶意或受感染的网站可能会开始在用户的设备上执行命令。此配置允许一组外部域名访问 Tauri 命令。当您配置允许访问 IPC 的域名时,所有子路径都允许访问。不允许子域名。 警告:仅当您拥有针对恶意外部站点的内部检查,或者您可以信任允许的外部站点时,才使用此选项。否则,您的应用程序可能会容易受到危险的 Tauri 命令相关攻击。 | |
boolean | false | 设置自定义协议是否应使用http://<scheme>.localhost 而不是Windows上的默认https://<scheme>.localhost 。警告:使用 http 方案将在尝试获取http 端点时允许混合内容,因此安全性较低,但将与macOS和Linux上使用的<scheme>://127.0.0.1 协议的行为匹配。 |
内容安全策略 (CSP)
内容安全策略 (CSP) 定义。参见 https://mdn.org.cn/en-US/docs/Web/HTTP/CSP。
可以是以下任何类型
string
:单个文本字符串中的完整 CSP 策略。CspDirectiveSources
:一个对象,将指令与其源值(作为字符串列表)映射。
内容安全策略指令源列表
内容安全策略指令源列表。参见 https://mdn.org.cn/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/Sources#sources。
可以是以下任何类型
string
:CSP 源的内联列表。与List
相同,但用空格分隔符连接。string[]
:CSP 源的列表。该集合将用空格分隔符连接到 CSP 字符串中。
禁用 CSP 修改类型
dangerous_disable_asset_csp_modification
配置选项的可能值。
可以是以下任何类型
boolean
:如果为true
,则禁用所有 CSP 修改。false
为默认值,它配置 Tauri 来控制 CSP。string[]
:禁用给定列表中的 CSP 指令修改。
远程域名访问范围
外部命令访问定义。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
string? | null | 允许的 URL 方案。默认情况下,允许所有方案。 | |
字符串(必需) | 允许的域名。 | ||
string[] (必填) | 此范围适用的窗口标签列表。 | ||
string[] | [] | 在此范围内允许的插件列表。名称不应包含tauri-plugin- 前缀,例如,tauri-plugin-store 的名称为"store" 。 | |
boolean | false | 启用对 Tauri API 的访问。 |
更新程序配置
更新程序配置对象。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
boolean | false | 更新程序是否处于活动状态。 | |
boolean | true | 显示内置对话框,或者如果禁用则使用事件系统。 | |
UpdaterEndpoint ? | null | 更新程序端点。生产环境强制使用 TLS。 更新程序 URL 可以包含以下变量: - {{current_version}} :请求更新的应用程序版本- {{target}} :操作系统名称(linux 、windows 或darwin 之一)。- {{arch}} :机器的架构(x86_64 、i686 、aarch64 或armv7 之一)。示例 - https://my.cdn.com/latest.json:一个原始 JSON 端点,返回每个平台的最新版本和下载链接。 - https://updates.app.dev/{{target}}?version={{current_version}}&arch={{arch}}:一个具有位置和查询字符串参数的专用 API。 | |
string | null | 签名公钥。 | |
UpdaterWindowsConfig | 查看 | 更新程序的 Windows 配置。 |
UpdaterEndpoint
更新程序服务器的 URL。
生产环境中 URL 必须使用https
方案。
类型:string
(格式:uri
)
UpdaterWindowsConfig
Windows 的更新程序配置。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
string[] | [] | 提供给 NSIS 或 WiX 安装程序的其他参数。 | |
WindowsUpdateInstallMode | 查看 | Windows 更新的安装模式。默认为passive 。 |
WindowsUpdateInstallMode
Windows 更新的安装模式。
可以是以下任何**一种**类型:
- "basicUi":指定在安装过程中存在基本 UI,包括最后的对话框。
- "quiet":静默模式意味着不需要用户交互。如果安装程序需要,则需要管理员权限。
- "passive":指定无人值守模式,这意味着安装只显示进度条。
系统托盘配置
应用程序系统托盘图标的配置。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
字符串(必需) | 系统托盘上使用的默认图标的路径。 | ||
boolean | false | 一个布尔值,用于确定图像是否代表 macOS 上的模板图像。 | |
boolean | true | 一个布尔值,用于确定当托盘图标在 macOS 上接收到左键单击时是否应显示菜单。 | |
string? | null | MacOS 托盘标题 |
构建配置
构建配置对象。
类型:object
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
string? | null | 用于构建和运行应用程序的二进制文件。 | |
AppUrl | 查看 | 开发中加载应用程序资源的路径或 URL。 这通常是开发服务器的 URL,它提供具有实时重新加载的应用程序资源。大多数现代 JavaScript 打包器默认情况下都提供启动开发服务器的方法。 参见 vite、Webpack DevServer 和 sirv,了解如何设置开发服务器的示例。 | |
AppUrl | 查看 | 生产环境中加载应用程序资源的路径或 URL。 当提供相对于配置文件的路径时,它将递归读取,所有文件都嵌入到应用程序二进制文件中。除非您提供自定义窗口 URL,否则 Tauri 将查找 index.html 文件。您还可以提供要嵌入的路径列表,这允许对添加到二进制文件中的文件进行精细控制。在这种情况下,所有文件都添加到根目录,您必须在 HTML 文件中以这种方式引用它。 当提供 URL 时,应用程序将没有捆绑的资源,并且应用程序将默认加载该 URL。 | |
BeforeDevCommand ? | 查看 | 在tauri dev 启动之前运行的 shell 命令。如果您执行条件编译,则会设置 TAURI_PLATFORM、TAURI_ARCH、TAURI_FAMILY、TAURI_PLATFORM_VERSION、TAURI_PLATFORM_TYPE 和 TAURI_DEBUG 环境变量。 | |
HookCommand ? | 查看 | 在tauri build 启动之前运行的 shell 命令。如果您执行条件编译,则会设置 TAURI_PLATFORM、TAURI_ARCH、TAURI_FAMILY、TAURI_PLATFORM_VERSION、TAURI_PLATFORM_TYPE 和 TAURI_DEBUG 环境变量。 | |
HookCommand ? | 查看 | 在tauri build 中的捆绑阶段开始之前运行的 shell 命令。如果您执行条件编译,则会设置 TAURI_PLATFORM、TAURI_ARCH、TAURI_FAMILY、TAURI_PLATFORM_VERSION、TAURI_PLATFORM_TYPE 和 TAURI_DEBUG 环境变量。 | |
数组? | null | 传递给cargo 命令的功能。 | |
boolean | false | 我们是否应该在window.__TAURI__ 上注入 Tauri API。 |
AppUrl
定义要嵌入到应用程序中的 URL 或资源。
可以是以下任何类型
WindowUrl
:应用程序的外部 URL,或包含应用程序资源的目录的路径。string[]
:要嵌入到应用程序中的文件数组。
BeforeDevCommand
描述在tauri dev
之前运行的 shell 命令。
可以是以下任何类型
string
:使用默认选项运行给定的脚本。{ "script": string, "cwd": string?, "wait": boolean }
:使用自定义选项运行给定的脚本。名称 类型 默认值 描述 字符串(必需) 要执行的脚本。 string? null 当前工作目录。 boolean false
tauri dev
是否应等待命令完成。默认为false
。
HookCommand
描述在触发 CLI 挂钩时要执行的 shell 命令。
可以是以下任何类型
string
:使用默认选项运行给定的脚本。{ "script": string, "cwd": string? }
:使用自定义选项运行给定的脚本。名称 类型 默认值 描述 字符串(必需) 要执行的脚本。 string? null 当前工作目录。
插件配置
插件配置包含一个哈希映射,将插件名称映射到其配置对象。
类型:object