vue 混入mixin

//创建plugin.js
export default { install: function (Vue) { Vue.mixin({ methods: { $error(data){this.$Message.error({content: data,duration: 3,closable: true});}, $info(data){this.$Message.info({content: data,duration: 3,closable: true});}, $warning(data){this.$Message.warning({content: data,duration: 3,closable: true});}, $success(data){this.$Message.success({content: data,duration: 3,closable: true});}, $returnExcel(data, columns, titles) { let tableData = data; let title = columns; let tHeader = []; let tHeaderId = []; let tableinfo = []; for (let i = 0; i < title.length; i++) { if (title[i].key != null && title[i].key != "action") { tHeader.push(title[i].title); tHeaderId.push(title[i].key); } } for (let n = 0; n < tableData.length; n++) { var obj = {}; for (let j = 0; j < tHeaderId.length; j++) { let id = tHeaderId[j]; let value = tableData[n][tHeaderId[j]]; obj[id] = value; } tableinfo.push(obj); } require.ensure([], () => { const { export_json_to_excel, } = require("../utils/returnExcel/Export2Excel"); const excelTile = titles; const tHeaderTitle = tHeader; const filterVal = tHeaderId; const list = tableinfo; const data = this.$formatJson(filterVal, list); export_json_to_excel(tHeaderTitle, data, excelTile); }) }, $formatJson(filterVal, jsonData) { return jsonData.map((v) => filterVal.map((j) => v[j])); } }, }) } }

组册

import myPLugin from './Plugin'
Vue.use(myPLugin);

使用

this.$error(res.msg);
posted @ 2022-03-10 14:51  小万子呀  阅读(27)  评论(0编辑  收藏  举报