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

用织梦软件如何做网站外链生成

用织梦软件如何做网站,外链生成,销售外包服务,政务公开与网站建设的矛盾Vue 3 在组件开发方面引入了许多高级语法和新特性&#xff0c;这些让组件更加灵活、可组合、类型安全&#xff0c;并且更适合大型项目的架构需求。下面是 Vue 3 组件相关的高级语法 总结&#x1f447; &#x1f539; 1. <script setup> 中的 defineProps 和 defineEmits …

Vue 3 在组件开发方面引入了许多高级语法和新特性,这些让组件更加灵活、可组合、类型安全,并且更适合大型项目的架构需求。下面是 Vue 3 组件相关的高级语法 总结👇


🔹 1. <script setup> 中的 definePropsdefineEmits

✅ 定义 props 和 emits

<script setup>
const props = defineProps({title: String,count: {type: Number,default: 0}
})const emit = defineEmits(['increment'])
</script>

✅ 支持类型推导(TypeScript)

<script setup lang="ts">
interface Props {title: stringcount?: number
}
const props = defineProps<Props>()const emit = defineEmits<{(e: 'increment', value: number): void
}>()
</script>

🔹 2. defineExpose(组件对外暴露方法)

<script setup>
const sayHello = () => {console.log('Hello from child!')
}defineExpose({sayHello
})
</script>

父组件中用 ref 拿到子组件实例后可调用:

<template><Child ref="childRef" /><button @click="callChild">Call Child</button>
</template><script setup>
import { ref, onMounted } from 'vue'
import Child from './Child.vue'const childRef = ref()function callChild() {childRef.value.sayHello()
}
</script>

🔹 3. v-model 多值绑定(多个 prop)

<!-- 父组件 -->
<Child v-model:title="title" v-model:count="count" /><!-- 子组件 -->
<script setup>
const modelTitle = defineModel('title')
const modelCount = defineModel('count')
</script>

🔹 4. 动态组件 <component :is="...">

<template><component :is="currentComponent" />
</template><script setup>
import CompA from './CompA.vue'
import CompB from './CompB.vue'const currentComponent = ref(CompA)
</script>

🔹 5. 异步组件(defineAsyncComponent

import { defineAsyncComponent } from 'vue'const AsyncComp = defineAsyncComponent(() =>import('./HeavyComponent.vue')
)

支持 Suspense 组件包裹:

<Suspense><template #default><AsyncComp /></template><template #fallback><div>Loading...</div></template>
</Suspense>

🔹 6. 插槽的高级用法

具名插槽 / 插槽作用域

<!-- 父组件 -->
<Child><template #header><h1>Header</h1></template><template #default="{ message }"><p>{{ message }}</p></template>
</Child><!-- 子组件 -->
<template><slot name="header" /><slot :message="'Hello from Child!'" />
</template>

🔹 7. provide / inject 跨层级组件通信

// 父组件
<script setup>
import { provide } from 'vue'provide('theme', 'dark')
</script>// 子组件
<script setup>
import { inject } from 'vue'const theme = inject('theme') // 'dark'
</script>

🔹 8. 生命周期钩子(组合式 API)

import { onMounted, onUnmounted, onUpdated } from 'vue'onMounted(() => {console.log('Component mounted!')
})

🔹 9. v-bind="$attrs" & inheritAttrs: false

<script setup>
defineOptions({inheritAttrs: false // 不自动传递到根节点
})
</script><template><input v-bind="$attrs" />
</template>

✨ 你还可以了解:

  • v-memo:控制模板缓存、优化性能
  • v-is 动态组件指令(<div v-is="MyComp" />
  • 全局注册组件的最佳实践(通过插件)
  • 响应式组件状态封装:使用 useXxx composable 模式
  • <script setup name="MyComp"> 配合调试工具展示组件名
http://www.dtcms.com/wzjs/87694.html

相关文章:

  • 聊城网站建设信息刚刚刚刚刚刚刚刚刚刚刚刚刚刚
  • 长沙招工 最新招聘信息页面seo优化
  • 手机端网站尺寸百度一下官网首页网址
  • 郑州做茶叶的网站如何制作网页链接
  • 深圳有哪些做网站公司沈阳网站制作公司
  • 网站内容百度不收录google推广有效果吗
  • 用oracle做网站数据库seo网络培训机构
  • 济南定制网站建设公司企业排名优化公司
  • 怎么做百度seo网站如何进行新产品的推广
  • 做视频直播网站需要办理什么资质上海seo优化公司
  • 做一网站要什么属于b2b的网站有哪些
  • 大浪网站建设 优帮云免费下载百度并安装
  • 哪种网站名称容易通过备案审核搜索引擎优化排名案例
  • 活动 网站 源码windows优化大师收费吗
  • 软件开发做网站做品牌推广应该怎么做
  • 三明市网站建设互联网金融
  • 书画网站建设方案策划百度授权代理商
  • 做汽车的网站编辑关键词排名seo
  • 靠谱网站优化哪家好最经典最常用的网站推广方式
  • 凡科网站做网站可靠吗怎么在百度做网站推广
  • 襄樊网站开发营销型高端网站建设
  • 做网站要提供什么软文是什么文章
  • 网站开发实验室建设方案上海关键词优化按天计费
  • PK10如何自己做网站专业竞价托管哪家好
  • 做网站前端和平面配合搜索软件
  • 上海嘉定区网站建设公司seo会被取代吗
  • 可以做视频创收的网站百度识图找原图
  • 郑州建设网站有哪些seo顾问合同
  • 云霄城乡建设局网站淘宝推广怎么做
  • 企业网站托管平台有哪些网站收录量是什么意思