首页 > web前端 > uni-app > 正文

聊聊uniapp中this和that的使用方法

PHPz
发布: 2023-04-19 14:33:12
原创
1916 人浏览过

Uniapp是一个跨平台的开发框架,基于Vue.js和微信小程序的开发技术,实现了一次编写,多端运行。在Uniapp中,this和that是开发者经常使用的两个变量,用于在不同的情况下获取不同的对象。

this关键字是指当前组件的实例,使用this可以直接访问当前组件中的属性和方法。比如,在组件的methods中,通过this可以访问组件的data对象,如下所示:

export default {
    data() {
        return {
            message: 'Hello World'
        }
    },
    methods: {
        showMessage() {
            console.log(this.message);
        }
    }
}
登录后复制

在上述代码中,this.message就是组件中的一个数据属性,方法showMessage通过this访问message属性并打印输出。

that是一个临时对象,用于在函数内部保存this的值。在一些情况下,函数内部的this并不是指向当前组件的实例,此时可以使用that来保存this的值,以便在函数内部继续使用。

比如,在使用uni.request向服务器发起请求时,由于this的指向已经改变,此时需要使用that来保存当前组件的实例,示例如下:

export default {
    data() {
        return {
            items: []
        }
    },
    methods: {
        loadData() {
            //保存当前组件的实例
            let that = this;
            uni.request({
                url: 'http://localhost:8080/getData',
                success(res) {
                    //在此处使用that来访问items属性,而不是this
                    that.items = res.data;
                }
            })
        }
    }
}
登录后复制

在上述代码中,由于uni.request的回调函数中的this已经不再是当前组件的实例,所以需要使用that来保存当前组件的实例,以便继续访问和修改组件中的数据。

总之,在Uniapp开发中,this和that的使用是非常重要的,开发者需要清楚地知道它们的用途和使用场景,以便开发高效、稳定和可靠的应用程序。

以上是聊聊uniapp中this和that的使用方法的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板