动态获取主机IP地址,打开网页不再是localhost

  1. // 比如在vue.config.js中:这里返回的IPv4就是自己主机的ip地址,这里打开网页就不再是localhost
  2. const os = require("os");
  3. const interfaces = os.networkInterfaces();
  4. function hostIp() {
  5. var IPv4 = null;
  6. if (process.platform === "darwin") { // Mac平台
  7. for (let i = 0; i < interfaces.en0.length; i++) {
  8. if (interfaces.en0[i].family === "IPv4") {
  9. IPv4 = interfaces.en0[i].address;
  10. }
  11. }
  12. } else if (process.platform === "win32") { // windows平台
  13. for (let devName in interfaces) {
  14. let iface = interfaces[devName];
  15. for (let i = 0; i < iface.length; i++) {
  16. let alias = iface[i];
  17. if (alias.family === "IPv4" && alias.address !== "127.0.0.1" && !alias.internal) {
  18. IPv4 = alias.address;
  19. }
  20. }
  21. }
  22. }
  23. return IPv4;
  24. }
  25. // 下面在webpack的配置中,
  26. module.exports = {
  27. devServer: {
  28. host: hostIp(),
  29. port: 8314, // 这个端口可以自己定义
  30. }
  31. }