uni-app——自定义全局函数


简介

  自定义全局函数很重要。

 

使用

  这里教授使用自定义全局函数,进行路由守卫。

 

 1.在common中创建utils.js, 选择要挂载的对象。使用vue(此vm)

const install = (Vue,vm) => {
    // 挂载到$u 上    
    vm.$u.utils = {
        isLogin:() =>{
            if( !vm.vuex_token ){
                vm.$u.toast("请登录");
                setTimeout(()=>{
                    uni.redirectTo({
                        url:"/pages/auth/login"
                    })
                },2000)
                return false;
            }
            return true;
        }
    }
}
export default {
    install
}

 

  2.main.js注册

// 引入自定义工具
import utils from '@/common/utils.js'
Vue.use(utils, app)

 

       3. 调用

    vue.$u.挂载名(就是import名称).函数名
    例如:vue.$u.utils.isLogin()

 

 

这里有个小点,因为setTimeout(function(){} , int )是异步执行,所以要有返回值判断被路由守卫的是否继续执行

    onLoad() {
            console.log("vuex_token: "+this.vuex_token);
            
            // 因为 setTimeout是异步执行,如果让下面代码执行。可能因为没有数据报错。所以获取false后直接return,不执行下面代码
            if( !this.$u.utils.isLogin() ) { return }
            
            console.log(1111);
            console.log("Ssssssssss");
        },

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM