Vue解析一之挂载全局变量与方法
1、在mian.js里面进行Vue对象的原型连的挂载Vue.prototype.$ajax = Ajax;
2、使用Mixin:
VuVue.mixin({
    data(){
        return {
            Host:window.location.href.split('/gonghui')[0]
        }
    },
    methods:{
        parameterDeal(_parameter){
            var _sender="";
            if(_parameter instanceof Object){
                for(var k in _parameter){
                    _sender+=k+"="+_parameter[k]+"&";
                }
                return _sender.replace(/\&$/g,"");
            }else{
                return _parameter;
            }
        },
        createXMLHttpRequest(){
           try{
               return new window.XMLHttpRequest();
           }catch(e){
               try{
                   return new ActiveXObject("MSXML2.XMLHTTP.6.0");
               }catch(e){
                   try{
                       return new ActiveXObject("MSXML2.XMLHTTP.3.0");
                   }catch(e){
                       try{
                           return new ActiveXObject("MSXML2.XMLHTTP");
                       }catch(e){
                           try{
                               return new ActiveXObject("Microsoft.XMLHTTP");
                           }catch(e){
                               throw new Error("该浏览器版本太低,已经被大部分市场淘汰,请升级!!!");
                               return;
                           }
                       }
                   }
               }
           }
       },
        $ajax(_method,_url,_async,_parameter,_callBack){
        	_url=this.Host+_url;
            var that=this;
            var _ajax=this.createXMLHttpRequest();
            if(_ajax){
                _ajax.open(_method,_url,_async);
                _ajax.onreadystatechange=function(){
                    if(_ajax.readyState==4 && _ajax.status==200){
                        _callBack(JSON.parse(_ajax.responseText));
                    }else{
                 // 	console.log(_ajax.readyState);
                    }
                }
                _ajax.setRequestHeader("content-type","application/x-www-form-urlencoded;charset=utf-8");
                try {
                    _ajax.send(that.parameterDeal(_parameter));
                } catch (e) {
                    return false;
                } finally {
                    return false;
                }
            }
        }
   }
})
在组件里面使用this.$ajax;this.Host即可使用;
Vue解析一之挂载全局变量与方法的更多相关文章
- vue + typescript,定义全局变量或者方法
		众所周知,在 vue中,如果想定义一个全局变量的方法很简单,直接在 vue的原型上挂载属性或者方法即可. 但是,加上了typescript之后, Vue.prototype.$xxx = xxx 这 ... 
- 解决vue解析出现闪烁
		原因: 在使用vuejs.angularjs开发时,经常会遇见在如Chrome这类能够快速解析的浏览器上出现表达式({{ express }} ),或者是模块(div)的闪烁.对于这个问题由于Jav ... 
- 在vue项目中 如何定义全局变量 全局函数
		如题,在项目中,经常有些函数和变量是需要复用,比如说网站服务器地址,从后台拿到的:用户的登录token,用户的地址信息等,这时候就需要设置一波全局变量和全局函数 定义全局变量 原理: 设置一个专用的的 ... 
- Vue中组件通信的几种方法(Vue3的7种和Vue2的12种组件通信)
		Vue3组件通信方式: props $emit expose / ref $attrs v-model provide / inject Vuex 使用方法: props 用 props 传数据给子组 ... 
- vue中使用echarts的两种方法
		在vue中使用echarts有两种方法一.第一种方法1.通过npm获取echarts npm install echarts --save 2.在vue项目中引入echarts 在 main.js 中 ... 
- linux命令详解之挂载光驱的方法
		linux的硬件设备在/dev目录下,光驱也是其中./dev/cdrom表示光驱,挂载光驱的方法如下(以root身份): 代码如下: mkdir /mnt/cdrommount -t auto - ... 
- Java构造和解析Json数据的两种方法详解二
		在www.json.org上公布了很多JAVA下的json构造和解析工具,其中org.json和json-lib比较简单,两者使用上差不多但还是有些区别.下面接着介绍用org.json构造和解析Jso ... 
- nfs文件系统挂载失败解决方法
		nfs文件系统挂载失败解决方法 */--> nfs文件系统挂载失败解决方法 Table of Contents 1. 错误提示 2. 我的配置 1 错误提示 bootserver=255.255 ... 
- 分享一个解析XML成为php数组的方法
		原文:分享一个解析XML成为php数组的方法 <?php /* * To change this template, choose Tools | Templates * and open th ... 
随机推荐
- Hadoop编译方法
			伪分布式: hadoop-env.sh core-site.xml hdfs-site.xml mapred-site.xml 1.在hadoop官网下载hadoop的源码(同步跟踪最新源代码) mv ... 
- R+OCR︱借助tesseract包实现图片文本提取功能
			2016年11月,Jeroen Ooms在CRAN发布了tesseract包,实现了R语言对简单图片的文本提取.分析功能. 利用开源OCR引擎进行图片处理,目前可以识别超过100种语言,R语言可以借助 ... 
- sudo:无法解析主机 解决方案
			你如果电脑中没有vim,用gedit也可以. 打开文件以后,将其中的 127.0.1.1 xxxxx xxx 替换成你电脑的自己的名字即可. 
- 如何修改WinPE Boot的.wim镜像文件
			1. 使用imagex /apply或imagex /mountrw将WIM镜像文件mount到某个文件夹,假设为d:\tmp\winpe_x86\mount. 例: imagex /mountrw ... 
- Caused by: java.lang.NoSuchMethodError: javax.persistence.Table.indexes()[Ljavax/persistence/Index
			1.错误描述 WARN:2015-05-01 16:45:37[main] - Exception encountered during context initialization - cancel ... 
- Python基础_函数闭包、调用、递归
			这节的主要内容是函数的几个用法闭包,调用.递归. 一.函数闭包 对闭包更好的理解请看:https://www.cnblogs.com/Lin-Yi/p/7305364.html 我们来看一个简单的例子 ... 
- java实现中文分词
			IK Analyzer是基于lucene实现的分词开源框架 下载路径:http://so.csdn.net/so/search/s.do?q=IKAnalyzer2012.jar&t=doc& ... 
- 第三篇:爬虫框架 - Scrapy
			前言 Python提供了一个比较实用的爬虫框架 - Scrapy.在这个框架下只要定制好指定的几个模块,就能实现一个爬虫. 本文将讲解Scrapy框架的基本体系结构,以及使用这个框架定制爬虫的具体步骤 ... 
- 12-7jquery选择器学习
			p:odd 选择奇数个数的p标签 p:even选择奇数个数的p标签 p:gt(n)选择下标 大于n的p标签 p:lt(n)选择下标小于n的p标签 $(":root " ... 
- 【BZOJ3671】【NOI2014】随机数据生成器(贪心)
			[BZOJ3671][NOI2014]随机数据生成器(贪心) 题面 BZOJ 题解 前面的模拟 真的就是语文阅读理解题目 理解清楚题目意思 然后就会发现要求的就是一个贪心 从小往大枚举,检查当前数能不 ... 
