Skip to content

启用配置

项目内可建多个 config/config.*.ts 配置文件,适应不同的运行环境,如本地环境和生产环境需要有不同的配置。以下为示例:

本地环境

通过 指引 创建的项目, package.json 脚本为:

json
{
  ...,
  "scripts": {
    "dev": "trickd dev",
    "build": "trickd build",
    "start": "npm run build && bash ./dist/start.sh",
    "dev:prod": "trickd dev --config prod",
    "build:prod": "trickd build --config prod",
    "start:prod": "npm run build:prod && bash ./dist/start.sh"
  }
}
{
  ...,
  "scripts": {
    "dev": "trickd dev",
    "build": "trickd build",
    "start": "npm run build && bash ./dist/start.sh",
    "dev:prod": "trickd dev --config prod",
    "build:prod": "trickd build --config prod",
    "start:prod": "npm run build:prod && bash ./dist/start.sh"
  }
}

当以 npm run dev 方式运行项目时, 会自动解析 项目根目录/configconfig.default.tsconfig.local.ts(如果存在) 文件,并以 config.local.ts 为更高优先级进行合并。

ts
// config.default.ts
export const trickd: ModuleOptions = {
  env:{ foo: 'default' }
}
// config.local.ts
export const trickd: ModuleOptions = {
  env:{ foo: 'local' }
}
// trickd.env.foo => 'local'
// config.default.ts
export const trickd: ModuleOptions = {
  env:{ foo: 'default' }
}
// config.local.ts
export const trickd: ModuleOptions = {
  env:{ foo: 'local' }
}
// trickd.env.foo => 'local'

构建生产产物

当以 npm run build:prod 方式构建项目时, 会自动解析 项目根目录/configconfig.default.tsconfig.prod.ts(如果存在) 文件,并以 config.prod.ts 为更高优先级进行合并。

ts
// config.default.ts
export const trickd: ModuleOptions = {
  env:{ foo: 'default' }
}
// config.prod.ts
export const trickd: ModuleOptions = {
  env:{ foo: 'prod' }
}
// trickd.env.foo => 'prod'
// config.default.ts
export const trickd: ModuleOptions = {
  env:{ foo: 'default' }
}
// config.prod.ts
export const trickd: ModuleOptions = {
  env:{ foo: 'prod' }
}
// trickd.env.foo => 'prod'

NOTE

当有多个生产环境时,自行添加启动脚本命令和配置文件

生产环境配置变更

参考环境变量

获取配置

项目内可通过 useRuntimeConfig 获取配置

ts
const runtimeConfig = useRuntimeConfig()
console.log(runtimeConfig.public.trickd)
const runtimeConfig = useRuntimeConfig()
console.log(runtimeConfig.public.trickd)