美文网首页
gulp-preprocess + os 根据打包环境设置 请求

gulp-preprocess + os 根据打包环境设置 请求

作者: copyLeft | 来源:发表于2019-04-02 17:05 被阅读0次

安装依赖

// npm
npm i --save-dev gulp-preprocess

// yarn 
yarn add -d gulp-preprocess

获取本地IP

const os = require('os')
function getLocalHost(){
    const netWork = os.networkInterfaces()
    const lcoalKey = Object.keys(netWork)[0] 
    return  netWork[lcoalKey][1].address
}

module.exports = getLocalHost

gulp配置

const preprocess = require('gulp-preprocess')
const ENV = process.env.NODE_ENV || 'dev' // 获取环境变量
const getLocalHost = require('./getLocalHost.js')

function JS(){
    return src('./index.js')
           .pipe(preprocess({ context: { NODE_ENV: EVN_TYPE,  URL: getLocalHost()  } }))
           // 设置源码内变量
           ....
}


js 配置

{
   
   // 默认地址
   baseUrl: '/',
    
   // 开发地址 
      
   // @if NODE_ENV='dev'
   baseUrl: '/* @echo URL */'
   // @endif
}

命令行设置环境变量

set NODE_ENV=dev&&gulp  // 开发模式

set NODE_ENV=production&&gulp  // 生产模式

注意事项

  • 通过命令行配置的环境变量,为临时变量, 只针对当前shell环境, 可以通过添加系统环境变量或 package.json 简化调用.
  • 本地ip地址的获取, 不要针对个人及其做调整,可以将 os.networkInterfaces() 打印出来,选择所需的地址项

相关文章

网友评论

      本文标题:gulp-preprocess + os 根据打包环境设置 请求

      本文链接:https://www.haomeiwen.com/subject/ktogbqtx.html