// 加载配置文件
var instance = axios.create({
baseURL: 'http://zy-shop.tincent.me/Wechat/',
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
}
// withCredentials:true
});
//公共函数
function Public(){
  this.get=function(){
    console.log(1)
  },
  this.post=function(){
    console.log(2)
  },
  //顶部提示的弹框方法
  this.remind=function(that,remind){
    that.remindShow=true;
    that.remind=remind;
    setTimeout(function(){
      that.remindShow=false
    },1000)
  },
  //60秒倒计时、
  this.countdown=function(that){
    var time=60;
    that.downTime=time+"秒后获取";
    var timer=setInterval(function(){
      time--;
      //当时间降低成0时
      if(time==0){
        that.downTime="再次获取";
        clearInterval(timer);
      }else{
        that.downTime=time+"秒后获取";
      }
     },1000)
   }
    //前后台数据传递解析
  this.json2Form=function(json) {
    var str = "";
    for(var p in json){
    // 判断对象是否为数组
      if(typeof json[p]=="object"){
        var m=String(p)
        for(var i=0;i<json[p].length;i++){
          for(var x in json[p][i]){
            str+=m+"["+i+"]"+"["+x+"]"+ "=" +json[p][i][x]+"&";
          }
        }
      }else{
        str+=p + "=" + json[p]+"&";
      }
    }  
    // 截取字符串最后一位&
    var length=str.length-1;
    str=str.substring(0,length);
    // 返回字符串str
    return str;
  },
  //提交表单时的加锁处理
  this.getCsrfToken=function(){
    instance.get('Service/getCsrfToken').then(function(res){
      sessionStorage.setItem('submitKey',JSON.stringify({'submitKey':res.data.data.submitKey}))
    })
  },
  //session存储
  this.saveSession=function(key,data){
    sessionStorage.setItem(key,JSON.stringify(data));
  },
  //session提取
  this.getSession=function(key,str){
    //判断取值方式
    var user = JSON.parse(sessionStorage.getItem(key));
  if(user){
    if(str){
      return user[str];
    }
    return user;
    }

  },
  //session清楚
  this.removeSession=function(key){
    sessionStorage.removeItem(key)
  }
  //local存储
  this.saveLocal=function(key,data){
    localStorage.setItem(key,JSON.stringify(data));
  },
  //local提取
  this.getLocal=function(key,str){
    //判断取值方式
    var user = JSON.parse(localStorage.getItem(key));
      if(user){
        if(str){
          return user[str];
        }
      return user;
    }
  },
  //清除local
  this.removeLocal=function(key){
    localStorage.removeItem(key)
  },
  //获取URL传递的参数
  this.getUrlParam=function(name){
    var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
    var r = window.location.search.substr(1).match(reg);
    if(r!=null)return unescape(r[2]); return null;
  },
  //页面lodding函数
  this.loadding=function(type){
    //判断是否是启动loadding
    if (type=='load') {
      toast.loading({
        title:"加载中",
        duration:2000
        },function(ret){
      });
    } else if(type='hide'){
  setTimeout(function(){
    toast.hide();
   },500)
  }
  },
  //定义加载中时的文字显示
  this.pageWord=function(that,pageflag,title){
    if (pageflag==1) {
      that.pageWord=title;
    }else{
    that.pageWord="暂无更多"
    }
   }
}
var toast = new auiToast();
var public=new Public();

自用公共js文件的更多相关文章

  1. angular项目引用第三方公共js文件

    由于项目需要,领导要求在正在开发的angular项目中,引入公共js,以便进行统计计算. 于是便各种找度娘,网上有好多引用jquery插件的例子,于是便按照步骤对自身项目进行了改造,先记录一下: st ...

  2. kettle转换JavaScript加载外部js文件

    日常开发中,时常会出现这样一种情况.有大量的函数是通用的.而每个JavaScript里面写一遍,给维护带来很大的困扰.因而需要将公共的函数写在外部js文件中.这时就需要引入外部的公共文件了.下面是在转 ...

  3. ThinkPHP 3.2.3 自动加载公共函数文件的方法

    方法一.加载默认的公共函数文件 在 ThinkPHP 3.2.3 中,默认的公共函数文件位于公共模块 ./Application/Common 下,访问所有的模块之前都会首先加载公共模块下面的配置文件 ...

  4. 怎样把网站js文件合并成一个?几种方法可以实现

    我们在建网站时经常会用js特效代码以使页面更美观,比如js幻灯片代码.js下拉菜单等,但是网页特效一多,如果js文件没有合并的话会降低网站的性能,这时我们就要考虑合并js文件了,ytkah总结了以下几 ...

  5. webpack.config.js文件的高级配置

    一.多个入口文件之前我们配置的都是 一个入口 var webpack = require('webpack'); var commonsPlugin = new webpack.optimize.Co ...

  6. Vue main.js 文件中全局组件注册部分

    在 \src\components\index.js 文件中export组件 import HeaderList from './HeaderList' import HeaderMenu from ...

  7. asp.net利用HttpModule实现防sql注入和加载样式和JS文件

    1.新建一个类,实现IHttpModule接口 代码如下: public class SqlHttpModule : IHttpModule { public void Dispose() { } p ...

  8. vue element-ui怎样提炼一个自己写的js当作公共js

    vue element-ui怎样提炼一个自己写的js当作公共js请教一下各位大神,我刚刚触摸vue element-ui几天,写的一个清晰检索的input框,现在需当作项目公共的部分,可遭需的html ...

  9. 【微信小程序】 引用公共js里的方法

    一个小程序页面由四个文件组成,一个小程序页面的四个文件具有相同路径与文件名,由此我们可知一个小程序页面对应着一个跟页面同名的js文件.可是当有些公共方法,我们想抽离出来成为一个独立公共的js文件.我们 ...

随机推荐

  1. 洛谷 [P2486] 染色

    树剖+线段树维护连续相同区间个数 注意什么时候长度要减一 #include <iostream> #include <cstdio> #include <cstdlib& ...

  2. BZOJ 3895: 取石子[SG函数 搜索]

    有N堆石子 ·从某堆石子中取走一个 ·合并任意两堆石子 不能操作的人输. 100%的数据满足T<=100,  N<=50. ai<=1000   容易发现基础操作数$d=\sum a ...

  3. LeetCode - 492. Construct the Rectangle

    For a web developer, it is very important to know how to design a web page's size. So, given a speci ...

  4. jq实现数字增加或者减少的动画

    效果图: 1.HTML: <div class="up"></div> <br> <div class="down"& ...

  5. 标准Http协议的六种请求方法详解

    标准Http协议支持六种请求方法,即: 1.GET 2.POST 3.PUT 4.Delete 5.HEAD 6.Options 但其实我们大部分情况下只用到了GET和POST.如果想设计一个符合RE ...

  6. Spring框架系列之AOP思想

    微信公众号:compassblog 欢迎关注.转发,互相学习,共同进步! 有任何问题,请后台留言联系! 1.AOP概述 (1).什么是 AOP AOP 为 Aspect Oriented Progra ...

  7. Java集合中的AbstractMap抽象类

    jdk1.8.0_144 AbstractMap抽象类实现了一些简单且通用的方法,本身并不难.但在这个方法中有两个方法非常值得关注,keySet和values方法源码的实现可以说是教科书式的典范. 抽 ...

  8. mac 上格式化磁盘出现MediaKit报告设备上的空间不足以执行请求的解决办法

    1.问题描述: 我使用是一个2T移动硬盘,分了5个区 2.分析原因:因为mac OSX的日志式格式需要有EFI分区进行引导,而我的移动硬盘是没有EFI分区的,这样的话就会出现问题: 3.解决办法: 1 ...

  9. Action里面的自带的字段的含义

  10. 浏览器的 bfcache 特性

    一.bfcache 基本概念 现代浏览器在根据历史记录进行前进/后退操作时,会启用缓存机制,名为"bfcache"(back-forward cache,往返缓存),它使页面导航非 ...