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

做ic贸易去什么网站好明年做那个网站致富

做ic贸易去什么网站好,明年做那个网站致富,织梦模板更新网站,河南网站建设yijuce1、自定义组件,并使用 v-model 进行数据双向绑定。 简述: 自定义组件使用 v-model 进行传参时,遵循 Vue 3 的 v-model 机制。在 Vue 3 中,v-model 默认使用了 modelValue 作为 prop 名称,以及 update:modelValue 作为…

1、自定义组件,并使用 v-model 进行数据双向绑定。

简述: 自定义组件使用 v-model 进行传参时,遵循 Vue 3 的 v-model 机制。在 Vue 3 中,v-model 默认使用了 modelValue 作为 prop 名称,以及 update:modelValue 作为事件名称。

例子:
首先,我们创建一个自定义组件 MyInput.vue,该组件使用 <script setup> 语法,并允许通过 v-model 绑定值:

<!-- MyInput.vue -->  
<template>  <input :value="modelValue" @input="updateValue" />  
</template>  <script setup>  
import { defineProps, defineEmits, ref } from 'vue';  const props = defineProps({  modelValue: String  
});  const emit = defineEmits(['update:modelValue']);  const updateValue = (event) => {  emit('update:modelValue', event.target.value);  
};  
</script>

在这个例子中,使用了 defineProps 来定义 modelValue prop,它对应于 v-model 绑定的值。同时,我们使用 defineEmits 来声明 update:modelValue 事件,该事件将在输入框的值变化时被触发。

接下来,在父组件中使用这个自定义组件,并通过 v-model 绑定一个数据属性:

<!-- ParentComponent.vue -->  
<template>  <div>  <p>Value in Parent: {{ inputValue }}</p>  <MyInput v-model="inputValue" />  </div>  
</template>  <script setup>  
import { ref } from 'vue';  
import MyInput from './MyInput.vue';  const inputValue = ref('');  
</script>

在父组件中,导入了自定义的 MyInput 组件,并使用 v-modelinputValue 绑定到该组件的 modelValue prop 上。当 MyInput 组件中的输入框值变化时,它会触发 update:modelValue 事件,进而更新父组件中的 inputValue

注意,在 <script setup> 中,不需要显式地返回任何东西给模板,因为所有的响应式状态(通过 refreactive 创建)和函数都会自动暴露给模板。这使得代码更加简洁和直观。

2、异步加载动态组件
  ├─ src              │  ├─ components              │  │  ├─ ChartA.vue         │  │  ├─ ChartB.vue        │  │  └─ ChartC.vue       │  └─ test-async.vue └─ package.json                       
异步加载组件

方式一:


<template><AsyncOne />
</template><script setup>
import { defineAsyncComponent } from "vue";const AsyncOne = defineAsyncComponent(() =>import("@/components/ChartA.vue")
);
</script>

方法二:vue3+vite5 中


<template><AsyncTwo/>
</template><script setup>
import { defineAsyncComponent, ref } from "vue";const AsyncTwo = ref(null);
AsyncTwo.value = registerComponent("/ChartC");// 使用异步组件的方式加载组件
const registerComponent = (componentPath) => {const modules = import.meta.glob("./components/**/*.{vue,tsx}");for (const item in modules) {if (item.includes(componentPath)) {return defineAsyncComponent(modules[item]);}}
};
</script>
异步加载动态组件
<template><div v-for="(item, index) in componentsInfo" :key="index"><component :is="item.loadComp" /></div>
</template><script setup>
import { defineAsyncComponent, onMounted, ref } from "vue";const componentsInfo = ref([{id: "1-1",title: "图表A",component: "/ChartA",},{id: "1-2",title: "图表B",component: "/ChartB",},{id: "1-3",title: "图表C",component: "/ChartC",},
]);onMounted(() => {processLoad(componentsInfo.value);
});const processLoad = (info) => {for (let i = 0; i < info.length; i++) {let item = info[i];if (!item.component) {continue;}let resComp = registerComponent(item.component);item.loadComp = resComp;}
};// 注册一个异步组件
const registerComponent = (componentPath) => {//获取 src/components 文件夹下所有组件const modules = import.meta.glob("./components/**/*.{vue,tsx}"); for (const item in modules) {if (item.includes(componentPath)) {return defineAsyncComponent(modules[item]);}}
};
</script>

效果:
在这里插入图片描述

3、
http://www.laogonggong.com/news/96507.html

相关文章:

  • 建设网站的经验长春企业网站如何建设
  • 山东建设厅网站首页泰安市人才服务平台
  • 网站规划的基本步骤江苏省高校品牌专业建设网站
  • 网站域名怎么缴费珠海正规网站制作系统
  • 网牛网站建设WordPress电影网站源码
  • 广告公司网站首页设计页面博客seo教程
  • 单页网站制作自己做免费手机网站
  • 做网站有谁做外贸网站如何换域名
  • 如何做电影网站漯河网站建设漯河
  • 做网站的流程图网站作品集
  • 网站开发职业资格证书酒店无线网络设计方案
  • 网站自己做流量太原企业模板建站
  • 淮南网站推广网站用户体验诊断
  • 湛江做网站软件国家高新技术企业认定管理工作网
  • 建设网站策划书怎么建设百度网站
  • 定陶菏泽网站建设wordpress主题 qux
  • 网站开发支付功能甘肃网站建站系统平台
  • 新网站做seo图片网站如何优化
  • 假网站连接怎么做的asp网站改php网站方法
  • 网站ftp做网站的会给嘛免费的小程序制作平台有哪些
  • 游戏网站做的思想步骤网站报价
  • 西安建设城市信息网站怎么进网站后台管理系统
  • php网站开发视频教程网络公司网站图片
  • 企业网站页面图片阿里云网站建设套餐
  • 网站规划是什么意思高端网站建设设计公司有哪些
  • 建立网站外链常用的渠道有哪些零基础如何做电商
  • 物流网站前端模板下载花都营销型网站
  • 部门网站开发wordpress模板框架
  • 阿里巴巴企业网站建设百度公司官网入口
  • 福州网站建设服务商长沙官网制作