首页 > 其他分享 >ai问答:使使用 Vue3 组合式API 和 TypeScript 父子组件demo

ai问答:使使用 Vue3 组合式API 和 TypeScript 父子组件demo

时间:2023-04-24 09:34:54浏览次数:35  
标签:TypeScript const ai demo msg vue text 组件 ref

这是一个使用 Vue3 组合式 API 和 TypeScript 的简单父子组件示例

父组件 Parent.vue:

<template>
  <div>
    <p>{{ msg }}</p>
    <Child />
  </div> 
</template>

<script lang="ts">
import { ref } from 'vue'
import Child from './Child.vue'

export default {
  components: { Child },
  setup() {
    const msg = ref('Hello from Parent!')
    return { msg }
  }
}
</script>

子组件 Child.vue:

<template>
  <div>
    <p>Hello, my name is {{ name }}</p> 
  </div>
</template>

<script lang="ts">
import { ref } from 'vue'

export default {
  setup() {
    const name = ref('John')
    return { name }
  }
}
</script>

父组件通过components属性注册子组件,并在模板中使用。子组件有自己的状态和数据逻辑。

两者之间的通信方式有:

  1. 父传子:通过子组件的props接收父组件传递的数据

修改父组件:

setup() {
  const msg = ref('Hello from Parent!')
  const text = ref('some text')
  return { 
    msg,
    text 
  }
}

修改子组件:

props: {
  text: String
}

然后在子组件模板使用{{ text }}接收。

  1. 子传父:通过父组件的ref获取子组件实例,然后调用实例方法
    修改父组件:
const child = ref(null)

return {
  msg,
  text,
  child
}

修改子组件:

setup() {
  const emitText = (text: string) => {
    (child.value as any).someMethod(text)
  }
}  

然后在父组件中定义someMethod方法接收:

const someMethod = (text: string) => {
  console.log(text)
}

在子组件中调用emitText('some text')就可以触发父组件的方法。

标签:TypeScript,const,ai,demo,msg,vue,text,组件,ref
From: https://www.cnblogs.com/vmto/p/17348471.html

相关文章

  • 有了这些 AI 工具,健康和财富兼得「GitHub 热点速览」
    新的一周,又有什么新的AI应用呢?在AI专场,这次是文本生语音和双语对话模型,前者能解决你的语音问题,后者则是清华开源的模型,能让你搞个自己的类ChatGPT对话助手。此外,还有升级版的MiniGPT-4搞定基于图片的文字工作,像是诗歌生成、图片描述等等。不过,也有借着机器学习优化搞钱......
  • OpenAI的子词标记化神器--tiktoken 以及 .NET 支持库SharpToken
    经过Tokenize之后,一串文本就变成了一串整数组成的向量。OpenAI的 Tiktoken 是更高级的Tokenizer,编码效率更高、支持更大的词汇表、计算性能也更高。OpenAI在其官方GitHub上公开了一个开源Python库:tiktoken,这个库主要是用力做字节编码对的。字节编码对(BytePairEncoder......
  • Fine-Grained学习笔记(1):卷积,FFT
    Fine-Grained,在算法复杂度理论中特指,对各类算法的复杂度,进行(相较于P与NP的粗粒度分类的)细粒度分类,例如,证明某问题存在$n^2/\logn$的算法.Fine-Grained是一个新兴领域,其研究前景可看作是计算机科学学科中的石墨烯与钙钛矿(误).本系列主要参考UniversityofIllinoisa......
  • WRFdomain选取
    可以使用该网站WRFDomainWizard(jiririchter.github.io) 直接选定模拟区域,相关参数会出来,点击open可以保存该方案至本地 ......
  • codeforces 159D D. Palindrome pairs( manacher+dp )
    题目链接:codeforces159D题目大意:给出一个字符出,求取这个字符串中互相不覆盖的两个回文子串的对数。题目分析:首先能够用manacher模板,因为这个算法处理的字符串的长度式奇数,所以我们首先将原字符串拓展,也就是用一个没有出现过的子串填充到每两个字符之间,首位也要添加,这样处理后得到......
  • 怎么用ai抠图?ai抠图方法分享!​
    怎么用ai抠图?AI抠图是一种基于深度学习技术的图像处理技术,可以通过训练AI模型自动抠出正面物体和人物,并去除背景,生成透明背景或新的背景,相比于传统的手工抠图,AI抠图具有更高的准确性和效率,那么很多小伙伴不知道该使用什么软件进行AI抠图,下面感兴趣的小伙伴快一起来看看吧!工具:一键抠......
  • ai问答:使用vite如何配置多入口页面
    Vite是一个web开发构建工具,它可以用于开发单页应用和多页应用。要在Vite中配置多入口,可以:在vite.config.js中定义多个entry入口:exportdefault{build:{rollupOptions:{input:{main:resolve(__dirname,'index.html'),othe......
  • git提交本地master分支到远程main分支
    可以使用以下命令将本地master分支提交到远程main分支:首先,需要将本地master分支与远程存储库进行同步。可以使用以下命令将更新的数据从远程存储库拉取到本地:gitfetchorigin切换到本地master分支:gitcheckoutmaster将本地master分支合并到主分支main:g......
  • AI绘图!Lora训练简明教程
    如果想要快速训练,使用B站up主秋叶的整合包搭配视频【AI绘画】最佳人物模型训练!保姆式LoRA模型训练教程一键包发布_哔哩哔哩_bilibili即可.训练的基本逻辑就是首先进行预处理,可以通过stablediffusionwebui中的预处理,也可以通过ps这种图片处理软件,比如我想训练一个某动漫角......
  • [vite]: Rollup failed to resolve import "APlayer" from "./APlayer/index.vue".Thi
    这个错误提示是在你使用Vite构建项目时遇到的。错误信息提示Rollup在构建过程中无法解析import"APlayer",而且这很可能会在运行时破坏你的应用程序。这个问题的原因是,APlayer并不是一个模块,没有被正确地导出到你的项目中。为了解决这个问题,你需要告诉Rollup将APlayer......