uniapp和微信小程序转换后的一些对比笔记
2024-04-02 本文已影响0人
吉凶以情迁
以前2016年写的组件 调用组件的方法用的是
var dialog = this.selectComponent("#dialog");
dialog.showDialog();
而现在,之前用的一个大佬自动化转换的 发现用的是zpSelectComponent
实现的但是看上去是第三方的,在vue3这里好像不支持。
但是真的有必要这样嘛
直接给组件加个ref="dialog"
,然后 this.$refs.dialog.showDialog();
以前小程序绑定
<searchdialog id='dialog' distanceMonth="5" confirmSearchText='搜索' bind:onDismissDialog="onDismissDialog" bind:onShowDialog="onShowDialog" bind:onSearchClick="onSearchClick">
Component({
/**
* 组件的属性列表
*/
properties: {
confirmSearchText: {
type: String,
value: '开始搜索'
},
distanceMonth: {
type: Number,
value: 1
}
},
而现在,直接不需要bind.
uniapp
<userlogin id="dialog" ref="userlogin" confirmText="提交"
@onSubmitClick="onSubmitLoginClick($event, { tagId: 'dialog' })" dialogtitle="登录"></userlogin>
props部分仅仅定义了这些
props: {
dialogtitle: {
type: String,
default: '登录'
},
confirmText: {
type: String,
default: '登录'
}
},
事件 都大差不差
以前小程序写的
onSearchClick(e: any) {
console.debug("收到了组件的onSearchClick ", e,e.detail.startdate, e.detail.enddate);
var dialog = this.selectComponent("#dialog");
dialog.dismissDialog();
},
而uniapp 几乎一模一样 ,除了selectComponent,这个直接refs直接控制就行,