当前位置: 首页 > news >正文

vue2和vue3的一些技术点复习

二、vue2

1、vue2对已有组件二次封装,例如fes2 input 组件(文档链接)

子组件

<template><div class="keyboard-page"><wb-input:id="keyBoardId":placeholder="placeholder" :type="type" :disabled ='disabled'v-model="inValue":maxlength="maxlength":autocomplete="autocomplete"@on-focus="$emit('onKeyFocus')"@on-change="$emit('onKeyChange')"@on-enter="$emit('enterQuery')":slotType="slotType":slotValue="slotValue"><template v-if="slotType === 'TEXT' "><span :slot="slotLocation">{{slotValue}}</span></template></wb-input></div>
</template>
<script>
export default {name: 'input',model: {prop: "modelValue",event: "returnModel",},props: {placeholder: {type: String,default: '请输入' },type: {type: String,default: 'text'},disabled: {type: Boolean,default: false},modelValue: String | Array | Object | Boolean | Number,keyBoardId: {type: String,default: '',},maxlength: {type: Number},autocomplete: {type: String,default: '',},isSlot: {type: Boolean,default: false},slotLocation: {type: String,default: 'prepend',},slotType: {type: String,default: '',},slotValue: String | Array | Object | Boolean | Number,},computed: {inValue: {get: function () {return this.modelValue;},set: function (newValue) {this.$emit("returnModel", newValue);return newValue;},},},
}
</script>

父组件引入

<template><div class="page"><keyBoardInput :keyBoardId="'productSearchInfo'"@onKeyFocus="searchInputFocus"@onKeyChange="fuzzyMatching"@enterQuery="search"v-model="queryData.searchInfo"autocomplete="on" placeholder="请输入查询条件(支持产品编码/产品名称检索)"></keyBoardInput></div>
</template>
<script>
import keyBoardInput from "@/components/keyboard.vue";export default {name: 'About',components: {keyBoardInput,},data() {return {queryData: {searchInfo: ''} };},methods: {search() {console.log('enter 查询')},searchInputFocus() {console.log('获取焦点')},fuzzyMatching() {console.log('change')},},
};
</script>

2、插槽使用

参考此链接

http://www.lryc.cn/news/95496.html

相关文章:

  • 安装nvm 切换node版本
  • 【html中的BFC是什么】
  • 苹果账号被禁用怎么办
  • 跨境出海企业,如何防范恶意退货欺诈
  • 数据出境要依法“过安检”!什么是数据出境?
  • ARM——点灯实验
  • Kubernetes 使用 helm 部署 NFS Provisioner
  • Istio Pilot源码学习(二):ServiceController服务发现
  • Spring框架中的ResourcePatternResolver只能指定jar包内文件,指定容器中文件路径报错:FileNotFoundException
  • pytorch工具——认识pytorch
  • 解决Jmeter响应内容显示乱码
  • ChatGPT和搜索引擎哪个更好用
  • Nginx 301 https跳转后出现跨域和混合内容问题 —— 筑梦之路
  • 记录--关于前端的音频可视化-Web Audio
  • docker-compose yml配置、常用命令
  • 【实战】 七、Hook,路由,与 URL 状态管理(下) —— React17+React Hook+TS4 最佳实践,仿 Jira 企业级项目(十三)
  • 【MySQL】_5.MySQL的联合查询
  • 【后端面经】微服务构架 (1-3) | 熔断:熔断-恢复-熔断-恢复,抖来抖去怎么办?
  • 对UITextField输入内容的各种限制-总结
  • 【图论】二分图
  • 数据结构——(一)绪论
  • [ 华为云 ] 云计算中Region、VPC、AZ 是什么,他们又是什么关系,应该如何抉择
  • 表单验证:输入的字符串以回车分隔并验证是否有
  • 智能财务分析-亿发财务报表管理系统,赋能中小企业财务数字化转型
  • 图为科技T501赋能工业机器人 革新传统工业流程
  • 安全狗深度参与编写的《云原生安全配置基线规范》正式发布!
  • 如何在3ds max中创建可用于真人场景的巨型机器人:第 2 部分
  • Vue中TodoList案例_编辑
  • 什么是Redis?
  • 深入浅出理解vue2/vue3响应式原理