vue

day01:

Vue自定义函数挂到全局方法

方法一:使用exports.install + Vue.prototype

自定义一个fun.js函数,写需要全局调用的方法,

export default {
    install(Vue) {
        Vue.prototype.getNowDate = function(){
            //方法
        },
        Vue.prototype.reflash = function() {
            //方法
        }
    }
}

在main.js里调用fun.js

import fun from './fun'
Vue.use(fun);

在其他组件里可以调用挂载定义的函数,比如 this.reflash();

 

方法二:使用全局变量模块文件
新建一个Global.vue文件

<script>
    const token = '123456789';

    export default {
        methods: {
            getToken() {
                //方法
            }
        }
    }
</script>

在其他文件里需要引用此全局变量模块文件,然后调用相应的方法或者变量名

<script>
    import global from './Global';

    export default{
        data() {
            return {
                param: global.token,
            }
        },
        methods:{
            getGlobals() {
                global.getToken();
            }
        }
    }
</script>

 

本地图片预览

除了base64还可以用ObjectURL

常规情况下:window.createObjectURL(file)

火狐内核:window.URL.createObjectURL(file)

webkit/chrome内核:window.webkitURL.createObjectURL(file)

window.URL.createObjectURL可以浏览视频或者图片,其生成的URL放在video的src里可以预览视频。

 

路由的登录权限

在router.js里对meta的requireAuth设置是否需要登录权限来访问页面,

在beforeEach函数里,筛选出需要登录权限的路由,再对当前用户做判断,判断当前用户已登录或者登录异常,

如果用户已登录 则next( );否则跳到登录异常的方法以及页面。

 

Vue.nextTick()使用场景

1.在vue的生命周期函数created()里的dom操作一定要放在this.$nextTick(function(){})里,因为created函数执行的时候,DOM元素并没有渲染,所以这时候的操作是无用的,所以要放在this.$nextTick()这个对DOM的的异步操作的方法里。

2.在数据变化后要执行的某个操作,而这个操作需要使用随数据改变而改变的DOM结构的时候,这个操作都应该放进Vue.nextTick()的回调函数中

 

fastclick在vue项目中的使用

fastclick:处理移动端click事件300毫秒延迟。

安装fastclick 

npm install fastclick -S

在main.js中

import FastClick from 'fastclick'

FastClick.attach(document.body);

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值