/** * 获取IP、HOSTNAME、MAC工具类 */ const os = require("os"); export default { /** * 获取IP. */ getIP(): string { var ip: string = ""; let interfaces = os.networkInterfaces(); for (var devName in interfaces) { var iface = interfaces[devName]; for (var i = 0; i < iface.length; i++) { let alias = iface[i]; if ( alias.family === "IPv4" && alias.address !== "127.0.0.1" && !alias.internal ) { ip = alias.address; } } } return ip; }, /** * 获取主机名 */ getHostName(): string { var os = require("os"); return os.hostname(); }, /** * 获取MAC地址 */ getMAC(): string { let mac: string = ""; var getmac = require("getmac").default; getmac.getMac(function(err: any, macAddress: string) { console.log("getMAC err", err); mac = macAddress; }); return mac; }, /** *表单验证 */ validate(value: string, type: string): boolean { let inputValue: string = value.replace(/(^\s*)|(\s*$)/g, ""); // 非空验证 if ("require" === type) { return !!inputValue; } if ("number" == type) { return /[1-9]{2}.?/.test(inputValue); } // 手机号验证 if ("phone" === type) { return /^1\d{10}$/.test(inputValue); } // 邮箱格式验证 if ("email" === type) { return /^(\w)+(\.\w+)*@(\w)+((\.\w{2,3}){1,3})$/.test(inputValue); } }, /** * * * el:点击元素的id号,options:{menuName: "首页", menuAddress: "#/home", id: "2222", name: "1" } * * **/ frameToMessage(el, options) { // if ("development" !== process.env.NODE_ENV) { // return; // } let option = JSON.stringify(options); let element = document.getElementById(el); element.addEventListener("click", function(event) { console.log(option); if ( window.parent.document.getElementsByClassName("tabContaner")[0] ) { window.parent.document .getElementsByClassName("tabContaner")[0] .setAttribute("data-frameDAta", option); } }); } };