背景:vue前端一般没有直接获取mac地址的方法,我们可以通过nodejs获取,并将获取的网络地址动态通过vue.config.js 写入自定义vue参数process.env
var ifaces = os.networkInterfaces();
const network=ifaces[Object.keys(ifaces)[0]].find(x=> x.internal == false && x.family == 'IPv4');
const address=network.address;
const mac=network.mac;
// 自定义Vue打包插件的配置
// 这里主要目的是 把 变量参数 写入到 process.env(可以修改 process.env)
chainWebpack: config => {
// args 是一个数组,返回值也必须是一个数组
config.plugin("define").tap(args => {
// console.log("define", args);
let newProcessEnv = { ...args[0]["process.env"], address:'"'+address+'"',mac:'"'+mac+'"' };
return [{ "process.env": newProcessEnv }];
});
}