vite与xcode环境变量配置记录详解

 更新时间:2022年09月16日 11:06:14   作者:头疼脑胀的代码搬运工  
这篇文章主要为大家介绍了vite与xcode环境变量配置记录详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

一、vite 环境变量配置

废话开篇:为了方便调试及开发自然离不开不同的环境配置,这里简单记录下 vitexcode 的环境变量设置

1、效果

终端输入 npm run dev

npm run dev

显示开发环境下的接口地址

终端输入 npm run prod

显示发布环境下的接口地址

2、操作:

(1)cd 进入到当前的项目文件夹

(2)分别创建两个文件

//开发环境
touch .env.dev
//生产环境
touch .env.prod

在工程下的目录结构如下:

.env.dev 文件的内容

NODE_ENV = 'dev'
VITE_BASE_URL = 'https://dev.com'

.env.prod 文件的内容

NODE_ENV = 'prod'
VITE_BASE_URL = 'https://prod.com'

(3) 配置 package.json,添加自定义终端指令

"scripts": {
    "dev": "vite --mode dev",
    "prod": "vite --mode prod",
    "build": "vue-tsc --noEmit && vite build",
    "preview": "vite preview"
}

这里我们看到在 devprod 后面添加了 --mode 与之对应的开发环境标识

(4)如何获取程序配置环境变量

直接上代码

import { defineConfig ,loadEnv } from 'vite'
import vue from '@vitejs/plugin-vue'
import { resolve } from 'path'
export default defineConfig(({ command, mode }) => {
    let envConfig = loadEnv(mode, process.cwd());
    let baseUrl = envConfig.VITE_BASE_URL;
    return {
        resolve:{
        alias:{
        '@':resolve(__dirname,'/src'),
        }
        },
        base:'./',
        server:{
        port:3000,
        open:true,
        cors:true,
        base: "./ ", //生产环境路径
        proxy: { // 本地开发环境通过代理实现跨域,生产环境使用 nginx 转发
        // 正则表达式写法
        '^/api': {
        target: baseUrl, // 后端服务实际地址
        changeOrigin: true, //开启代理
        rewrite: (path) => path.replace(/^\/api/, '')
        }
     }
   },
   plugins: [vue()]
  }
})

这里从 vite 模块里获取 loadEnv ,利用 loadEnv 方法获取到终端在启动的时候带过来的 mode,那么,通过

loadEnv(mode, process.cwd())

方法获取相应配置文件下的全部以 VITE 开头的变量,如:

VITE_BASE_URL = 'https://dev.com'

这样,在后面的跨域请求处理上就可以直接根据终端命令来指定对应的接口环境。

(5)其他的 vue 页面如何获取动态环境变量,直接上代码:

<script lang="ts" setup>
import { ref } from "vue"
var baseUrl = ref(import.meta.env.VITE_BASE_URL)
</script>
<template>
    <div>
    <div class="content-div">当前地址:{{ baseUrl }}</div>
    </div>
</template>
<style>
.content-div {
    font-size: .17rem;
    margin-top: 1rem;
}
</style>

直接使用 import.meta.env.VITE_BASE_URL 方式来获取不同的环境变量值。

二、xcode的环境变量如何配置

1、效果

DEBUG

RELEASE

2、操作

(1)创建 debugrelease 两个 xcconfig 文件

创建后如图:

(2)xcconfig 文件内容

debug

URL_DOMAIN_NAME = /dev.com
BASE_URL = https/${URL_DOMAIN_NAME}

release

URL_DOMAIN_NAME = /prod.com
BASE_URL = https/${URL_DOMAIN_NAME}

这里需要注意 // 会被默认理解为注释,拆分拼接可以避免。

(3)在 xcode 下配置环境配置文件

这里需要注意的是如果工程用到了 cocopods 这里一般这里都会是 cocopods 的设置的内容,所以,在设置新的配置项后需要引入 cocopods 对应的配置文件,可以通过 #include "其他配置文件路径" 导入。

(4)取值

两个方式:

第一种:在工程文件下添加如下配置

这里其实就是取环境变量

-D'BASEURL=@"${BASE_URL}"'

ViewController.m 文件里添加如下宏定义

#define URL BASEURL

使用:

第二种:添加到 info.plist 文件里

使用:

内容都是些基础知识,整理在一起做一个比较,只是希望对需要人有帮助

更多关于vite xcode 环境变量配置的资料请关注脚本之家其它相关文章!

相关文章

  • 利用Vue模拟实现element-ui的分页器效果

    利用Vue模拟实现element-ui的分页器效果

    这篇文章主要为大家详细介绍了如何利用Vue模拟实现element-ui的分页器效果,文中的示例代码讲解详细,感兴趣的小伙伴可以动手尝试一下
    2022-11-11
  • vue路由教程之静态路由

    vue路由教程之静态路由

    这篇文章主要给大家介绍了关于vue路由教程之静态路由的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用vue具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-09-09
  • vue使用neovis操作neo4j图形数据库及优缺点

    vue使用neovis操作neo4j图形数据库及优缺点

    这篇文章主要介绍了vue使用neovis操作neo4j图形数据库,本文给大家介绍了与常规做法的优缺点对比及使用技巧,对vue neo4j图形数据库相关知识感兴趣的朋友一起看看吧
    2022-02-02
  • Vue.component的属性说明

    Vue.component的属性说明

    这篇文章主要介绍了Vue.component的属性说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-03-03
  • vue单页面如何设置高度100%全屏

    vue单页面如何设置高度100%全屏

    这篇文章主要介绍了vue单页面如何设置高度100%全屏,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-04-04
  • vue-element-admin如何转换成中文

    vue-element-admin如何转换成中文

    这篇文章主要介绍了vue-element-admin如何转换成中文问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-03-03
  • Vue 创建组件的两种方法小结(必看)

    Vue 创建组件的两种方法小结(必看)

    Vue 创建组件的方法有哪些呢?下面小编就为大家分享一篇Vue 创建组件的两种方法小结,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-02-02
  • 在vue-cli中引入lodash.js并使用详解

    在vue-cli中引入lodash.js并使用详解

    今天小编就为大家分享一篇在vue-cli中引入lodash.js并使用详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-11-11
  • vue3:vue2中protoType更改为config.globalProperties问题

    vue3:vue2中protoType更改为config.globalProperties问题

    这篇文章主要介绍了vue3:vue2中protoType更改为config.globalProperties问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-09-09
  • vue2.0 better-scroll 实现移动端滑动的示例代码

    vue2.0 better-scroll 实现移动端滑动的示例代码

    本篇文章主要介绍了vue2.0 better-scroll 实现移动端滑动的示例代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
    2018-01-01

最新评论