获取本机局域网IP地址

安装依赖

npm install os

在 vue.config.js 配置文件中配置

  1. 增加一个函数用于获取本机内网 IP

    const os = require('os');
    function getNetworkIp() {
      // 打开的 host
      let needHost = '';
      try {
        // 获得网络接口列表
        let network = os.networkInterfaces();
        for (let dev in network) {
          let iface = network[dev];
          for (let i = 0; i < iface.length; i++) {
            let alias = iface[i];
            if (
              alias.family === 'IPv4' &&
              alias.address !== '127.0.0.1' &&
              !alias.internal
            ) {
              needHost = alias.address;
            }
          }
        }
      } catch (e) {
        needHost = 'http://localhost';
      }
      return needHost;
    }
    
  2. chainWebpack 函数中增加配置

    config.plugin('define').tap((args) => {
      const ip = getNetworkIp();
      args[0]['process.env'].BASE_IP = `"${ip}"`;
      return args;
    });
    

获取使用

启动项目之后就可以从 process.env 的相应变量中获取到本机 IP 了

console.log('IPv4', process.env.BASE_IP)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值