os.networkInterfaces()是Nodejs的一個方法,該方法返回一個對象,包含只有被賦予網絡地址的網絡接口。我們創建一個vue-cli項目的時候,默認會在config目錄下index.js文件中配置初始host屬性為localhost或127.0.0.1,瀏覽器打開的地址也會基於host和port。
要改變這個地址我們可以在index.js文件引用os並定義一個getIP()函數。
const os = require('os').networkInterfaces() function getIP() { var interfaces = os; console.log(interfaces) for (var devName in interfaces) { var iface = interfaces[devName]; for (var i = 0; i < iface.length; i++) { var alias = iface[i]; if (alias.family === 'IPv4' && alias.address !== '127.0.0.1' && !alias.internal) { return alias.address; } } } }
打印 console.log(interfaces) 得到:

然后將原來的host: localhost屬性修改為host: getIP(),npm run dev重啟項目,不出意外你將在控制台看到以下信息,並且瀏覽器地址也變成了你的IP。
可參考 node中文文檔
不知為什么這么寫,但是頁面顯示正確,后續會更新。。。
