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

电子商务网站设计的基本要求酷家乐设计家官网

电子商务网站设计的基本要求,酷家乐设计家官网,廉政网站 建设需求,seo怎么优化一个网站特殊说明: 以下vue3语法是基于 3.4之前版本进行使用的,3.4之后的版本 引入了 defineModel 宏,后续会介绍defineModel 1、vue3 与vue2 中v-model区别 vue3 中v-model绑定的不再是value,而是modelValue,接收的方法也不再…

特殊说明: 以下vue3语法是基于 3.4之前版本进行使用的,3.4之后的版本 引入了 defineModel 宏,后续会介绍defineModel

1、vue3 与vue2 中v-model区别
vue3 中v-model绑定的不再是value,而是modelValue,接收的方法也不再是input,而是update:modelValue
vue2 中v-model的主要原因是由于value和input事件可能另有它用,比如select、textarea,select选择框绑定的是checked,而不是value,同样接受事件也不是input,而是change
如下图:
在这里插入图片描述

2、v3 v2 中绑定单个值:

2.1 vue3中双向绑定单个值,以及自定义绑定值时候
v-model 在原生input上使用
父组件

<template><input v-model="myV3Vale" /><!-- 编译之后等价于 --><input :value="myV3Vale" @input="myV3Vale = $event.target.value"/><!-- 引用组件中 // 默认传值是 modelVale--><my-son-com :modelValue="myV3Vale"   :otherPropField="otherPropField"@update:modelValue="newValue => myV3Vale = newValue"@update:otherPropField="newValue => myV3Vale = newValue"></my-son-com>
</template>

子组件

// 以下为:MySonCom.vue
<template><input:value="props.modelValue"@input="emit('update:modelValue', $event.target.value)"/>
</template>
<script setup>
// 默认传参必须是modelValue,事件必须是update:modelValue,在子组件中如下:
const props = defineProps({modelValue: String
})
const emits = defineEmits(["update:modelValue"])
const update = (e) => {emits("update:modelValue", e.target.value)
}
//多个参数时 传递额外参数 otherPropField 必须是如下:v-model:otherPropField,对应的事件是update:otherPropField
const otherProp = defineProps({otherPropField: String
})
const othersEmits = defineEmits(["update:otherPropField"])
const otherUpdate = (e) => {emits("update:otherPropField", e.target.value)
}
</script>

2.2、v2 中绑定单个值、多个值
父组件

<template><!-- 默认传值是 value --><my-com-v2 v-model="myV2Value" v-bind:otherField.sync="otherField"/>// 等价与<my-com-v2 :value="myV2Value" @input="myV2Value = $event"/>// 绑定额外参数 使用 .sync<my-com-v2  v-bind:otherField.sync="otherField"/><my-com-v2  v-bind:otherField="otherField" v-on:update:otherField="otherField = $event"/><!-- 在组件中 -->
</template>

子组件 MyComV2.vue

<template><input type="text" :value="myV2Value" @input="inputChange">
</template>
<script>
export default {name: 'MyComV2',props: {value: {type: String,default: ''},otherField: {type: String,default: '其他属性'}},methods: {inputChange(e) {// v2中双向绑定触发只能是 input 事件this.$emit('input', e.target.value)}}
}
</script>

3.vue3 中绑定多个值 基于3.4版本之前,

父组件
<template><my-son-com v-model:name="name" v-model:person="person"></my-son-com>
</template>>
<script setup>
import { ref, reactive} from 'vue'
const name = ref('Andy')
const person = reactive({age: 18,sex: 'MEN'
})
</script>

子组件 MySonCom.vue
建议使用 setup 语法糖,而不是使用 setup() {} 函数

<template><input type="text" :value="name" @input="$emit('update:name', $event.target.value)"><input type="text" :value="person.age" @input="$emit('update:person', $event.target.value)">
</template>
<script setup>
defineProps({name: String,person: Object
})
defineEmits(['update:name', 'update:person'])
</script>

4.vue3 中不在使用.sync 替代方案是 modelValue底层更新逻辑

v3常用修饰符有 .lazy, .number, .trim
<template>默认是每次 input 事件之后更新数据,而添加lazy之后,变成每次change事件之后才能更新数据;<input type="text" v-model.lazy="name">.number 将用户输入的内容转换为 number 数字,如果无法转换为number类型的数字,则会视为无效的输入;<input type="number" v-model.number="age">.trim 将用户输入内容 两端的空格 自动去除;<input type="text" v-model.trim="name">
</template>
http://www.yayakq.cn/news/853504/

相关文章:

  • 网站建设分析旅游网站怎么建设
  • 怎么查看网站主机商网站免费的
  • 国内网站备案如何让做网站
  • 设计英语海淀搜索引擎优化seo
  • 口碑好的秦皇岛网站建设哪家好哪些网站可以做产品推广
  • 创建团购网站做论坛网站能赚钱吗
  • 做响应式网站青岛论坛
  • 网站怎么做可留言功能什么是crm系统
  • 学校 网站 建设 目的wang域名注册网站
  • 企业网站营销如何建设线上销售平台有哪些
  • 莱州网站建设价格上海网站建设排名公司
  • 安徽 网站开发免费引流在线推广
  • 有关学风建设网站企业网站托管方案内容具体有哪些
  • 网站开发和运营合同分开签么研究院网站系统建设方案
  • 网站开发工程师工资多少h5百度百科
  • 机械网站建设营销做会员卡网站
  • 移动网站打不开解决办法网站建设客户在哪里找
  • 如何建CMS网站图片展示 wordpress
  • 淄博网站建设 很乱现在学软件前景怎么样
  • 局域网做网站 内网穿透从化专业做网站
  • 男和男做的视频网站网站放视频代码
  • 企业网站模板哪个好百度推广官网入口
  • 佛山网站建设公司网站搭建计划书
  • 网站开发的选题审批表怎样做电影网站
  • 公司理念网站网站策划的重要性
  • 如何做自己的网站链接企业网站网络营销
  • 如何快速提升网站prwordpress浮动插件
  • 谷歌怎么建网站怎么制作糖葫芦教程
  • 建设网站盈利2015乡下自家院子设计图片
  • 免费空间做淘宝客网站网站主色怎么选择