12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- import Vue from 'vue'
- import App from './App'
- import { rootDocment,req } from 'common/utils.js'
- import { parseQueryString, NumberHandle, getDay } from 'common/common.js'
- import { api } from 'common/api.js'
- Vue.prototype.$api = api
- Vue.prototype.$rootDocment = rootDocment;
- Vue.prototype.$req = req;
- Vue.prototype.$parseQueryString = parseQueryString;
- Vue.prototype.$NumberHandle = NumberHandle;
- Vue.prototype.$getDay = getDay;
- Vue.prototype.$burialPoint = ({project_name,button_name,url_value,page_name,key_value})=>{//埋点
- req(api.burialPoint,'post',{
- project_name : project_name,
- button_name : button_name,
- url_value : url_value,
- page_name: page_name,
- key_value: key_value,
- browser: userAgent()
- },(res) => {
- if(res && res.errno == 0){
- }
- },()=>{
- })
- }
- function userAgent () {
- var u = navigator.userAgent.toLowerCase();
- if(u.match(/micromessenger/i)){return '微信浏览器'}
- if(u.indexOf('baidu')>0){return '百度浏览'}
- if(u.indexOf('qqbrowser')>0){return 'qq浏览'}
- if(u.indexOf('ucbrowser')>0){return 'uc浏览器'}
- if(u.indexOf('opera')>0){return 'Opera浏览器'}
- if(u.indexOf('firefox')>0){return 'Firefox浏览器'}
- if(u.indexOf('chrome')>0&&u.indexOf('safari')>0){return 'Chrome浏览器'}
- if(u.indexOf('safari')>0&&u.indexOf('chrome') == -1){return 'Safari浏览器'}
- if(u.indexOf('compatible')>0&&u.indexOf('msie') > -1&&u.indexOf('opera')==-1){return 'IE浏览器'}
- if(u.indexOf('windows nt 6.1; trident/7.0;')>0&&!(u.indexOf('compatible')>0&&u.indexOf('msie') > -1&&u.indexOf('opera')==-1)){return 'IE的Edge浏览器'}
- }
- Vue.config.productionTip = false
- if(navigator.userAgent.toLowerCase().match(/micromessenger/i)){
- var wx = require('weixin-js-sdk');
- var _this = this;
- req(api.wx_jsApiConfig, 'get', {
- url:encodeURI(window.location.href),
- }, (res) => {
- if(res.errno == 0 && res.rst){
- console.log(res)
- wx.config({
- debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
- appId: res.rst.appId, // 必填,公众号的唯一标识
- timestamp: res.rst.timestamp, // 必填,生成签名的时间戳
- nonceStr: res.rst.nonceStr, // 必填,生成签名的随机串
- signature: res.rst.signature, // 必填,签名
- jsApiList: [
- "updateTimelineShareData",
- "updateAppMessageShareData",
- "onMenuShareWeibo",
- "checkJsApi"
- ], // 必填,需要使用的JS接口列表
- openTagList:['wx-open-launch-weapp']
- });
- wx.ready(function() {
- _this.isWeixin = true
- //config信息验证后会执行ready方法,所有接口调用都必须在config接口获得结果之后,config是一个客户端的异步操作,所以如果需要在页面加载时就调用相关接口,则须把相关接口放在ready函数中调用来确保正确执行。对于用户触发时才调用的接口,则可以直接调用,不需要放在ready函数中
- });
- wx.error(function(res) {
- console.log('res',res);
- // config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名。
- });
- }
- },()=>{
- })
- // if(navigator.userAgent.toLowerCase().match(/micromessenger/i)){
- // Vue.config.ignoredElements = ['wx-open-launch-weapp']
- // }
- }
- App.mpType = 'app'
-
- const app = new Vue({
- ...App
- })
- app.$mount()
|