2021-05-13 10:56:04 +08:00
|
|
|
// The Vue build version to load with the `import` command
|
|
|
|
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
|
|
|
|
import Vue from "vue";
|
|
|
|
import ViewUI from "view-design";
|
|
|
|
import "./styles/theme.less";
|
|
|
|
|
|
|
|
import "core-js/stable";
|
2021-06-23 10:45:05 +08:00
|
|
|
// import "regenerator-runtime/runtime";
|
2021-05-19 14:10:05 +08:00
|
|
|
import vueQr from 'vue-qr'
|
2021-05-13 10:56:04 +08:00
|
|
|
|
|
|
|
import App from "./App";
|
|
|
|
import { router } from "./router/index";
|
|
|
|
import store from "./store";
|
|
|
|
import i18n from "@/locale";
|
|
|
|
|
|
|
|
import {
|
|
|
|
getRequest,
|
|
|
|
postRequest,
|
|
|
|
putRequest,
|
|
|
|
deleteRequest,
|
|
|
|
importRequest,
|
|
|
|
uploadFileRequest
|
|
|
|
} from "@/libs/axios";
|
|
|
|
import { setStore, getStore, removeStore } from "@/libs/storage";
|
|
|
|
|
|
|
|
import util from "@/libs/util";
|
|
|
|
import dictUtil from "@/libs/dictUtil";
|
|
|
|
|
|
|
|
import VueLazyload from "vue-lazyload";
|
|
|
|
import VueClipboard from "vue-clipboard2";
|
|
|
|
|
|
|
|
import * as filters from "@/utils/filters"; // global filter
|
|
|
|
|
|
|
|
import { md5 } from "@/utils/md5.js";
|
|
|
|
Vue.config.devtools = true;
|
|
|
|
Vue.config.productionTip = false;
|
|
|
|
Vue.use(VueLazyload, {
|
|
|
|
error: require("./assets/img-error.png"),
|
|
|
|
loading: require("./assets/loading2.gif")
|
|
|
|
});
|
|
|
|
Vue.use(ViewUI, {
|
|
|
|
i18n: (key, value) => i18n.t(key, value)
|
|
|
|
});
|
|
|
|
|
|
|
|
Vue.use(VueClipboard);
|
2021-05-19 14:10:05 +08:00
|
|
|
Vue.component(vueQr)
|
2021-05-13 10:56:04 +08:00
|
|
|
|
|
|
|
// 挂载全局使用的方法
|
|
|
|
Vue.prototype.getRequest = getRequest;
|
|
|
|
Vue.prototype.postRequest = postRequest;
|
|
|
|
Vue.prototype.putRequest = putRequest;
|
|
|
|
Vue.prototype.deleteRequest = deleteRequest;
|
|
|
|
Vue.prototype.importRequest = importRequest;
|
|
|
|
Vue.prototype.uploadFileRequest = uploadFileRequest;
|
|
|
|
Vue.prototype.setStore = setStore;
|
|
|
|
Vue.prototype.getStore = getStore;
|
|
|
|
Vue.prototype.removeStore = removeStore;
|
|
|
|
Vue.prototype.md5 = md5;
|
2021-08-06 11:32:29 +08:00
|
|
|
const buyerUrlPC = 'https://pc-b2b2c.pickmall.cn' // 跳转买家端地址 pc端
|
|
|
|
const buyerUrlWap = 'https://m-b2b2c.pickmall.cn' // 跳转买家端地址 wap端
|
|
|
|
Vue.prototype.linkTo = function (goodsId, skuId) { // 跳转买家端商品
|
|
|
|
window.open(`${buyerUrlPC}/goodsDetail?skuId=${skuId}&goodsId=${goodsId}`, '_blank')
|
2021-05-18 18:03:00 +08:00
|
|
|
};
|
|
|
|
Vue.prototype.wapLinkTo = function (goodsId, skuId) { // app端二维码
|
2021-08-06 11:32:29 +08:00
|
|
|
return `${buyerUrlWap}/pages/product/goods?id=${skuId}&goodsId=${goodsId}`
|
2021-05-18 18:03:00 +08:00
|
|
|
};
|
2021-05-13 10:56:04 +08:00
|
|
|
|
|
|
|
Array.prototype.remove = function(from, to) {
|
|
|
|
var rest = this.slice((to || from) + 1 || this.length);
|
|
|
|
this.length = from < 0 ? this.length + from : from;
|
|
|
|
return this.push.apply(this, rest);
|
|
|
|
};
|
|
|
|
|
|
|
|
Object.keys(filters).forEach(key => {
|
|
|
|
Vue.filter(key, filters[key]);
|
|
|
|
});
|
|
|
|
/* eslint-disable no-new */
|
|
|
|
new Vue({
|
|
|
|
el: "#app",
|
|
|
|
router,
|
|
|
|
store,
|
|
|
|
i18n,
|
|
|
|
render: h => h(App),
|
|
|
|
data: {
|
|
|
|
currentPageName: ""
|
|
|
|
},
|
|
|
|
mounted() {
|
|
|
|
// 初始化菜单
|
|
|
|
util.initRouter(this);
|
|
|
|
// 初始化全局数据字典
|
|
|
|
dictUtil.initDictData(this);
|
|
|
|
this.currentPageName = this.$route.name;
|
|
|
|
// 显示打开的页面的列表
|
|
|
|
this.$store.commit("setOpenedList");
|
|
|
|
this.$store.commit("initCachepage");
|
|
|
|
}
|
|
|
|
});
|