最详细之--Vue组件定义学习

电玩女神 2023-02-25 15:29 25阅读 0赞

一、组件的定义

1、全局组件定义(两种定义法)

  1. // 定义全局组件写法一:
  2. Vue.component('comp', //注意组件字母别写错了!写多了n
  3. {
  4. template: ` <div> 这里是组件 <button @click = handleback()>按钮!</button> <child></child> //这里是自己的儿子组件 这里{ {money}}元 </div>`,
  5. // components:{
  6. // child:'<div>这是自己的子组件啊</div>'
  7. // } 没这种骚气的写法
  8. methods: {
  9. handleback() {
  10. console.log('back!')
  11. }
  12. },
  13. data() { //data在这里必须是一个函数!不能像methods那样写的!
  14. return { //函数一定要写return的吗??
  15. money: 10
  16. }
  17. }
  18. })
  19. // 定义全局组件写法二:
  20. Vue.component('comp1', {
  21. template: '#box'
  22. })
  23. // 全局子组件
  24. Vue.component('child', {
  25. template: '<button @click = turnRight()>儿子组件</button>', //后面出现错误就看前面的逗号是不是忘记写了!
  26. methods: {
  27. turnRight() {
  28. console.log('right!')
  29. }
  30. }
  31. })

注意:记得写vue实例化,实例化相当于一个root的组件

使用组件:

  1. <!-- 没有根组件承载是不行的!! -->
  2. <div id="app">
  3. <!-- 使用组件 -->
  4. <comp>
  5. <child></child>>
  6. </comp>
  7. <comp1>
  8. <!-- 把组件名也写上会更好一些! -->
  9. <template id="box">
  10. <div>
  11. 这里是组件啊
  12. <child></child>
  13. </div>
  14. </template>
  15. </comp1>

2、局部组件的定义

  1. new Vue({
  2. el: '#app',
  3. // 局部组件定义
  4. components:{ //这个是有s的
  5. 'jucom':{
  6. template:'#jubox'
  7. }
  8. }
  9. })

局部组件的使用:

  1. //也是在vue实例化下使用哇!
  2. <jucom>
  3. <template id="jubox">
  4. <div>这里是局部定义的组件!</div>
  5. <!-- template里需要用个div包住再写这个其他东西! -->
  6. </template>
  7. </jucom>

发表评论

表情:
评论列表 (有 0 条评论,25人围观)

还没有评论,来说两句吧...

相关阅读

    相关 vue定义封装Loading

    一、需求问题 在vue项目的开发中,会经常遇到这样的需求。当在页面内容进行加载的时候,会进行请求数据,然后显示页面。在这个等待的过程中,会出现一段时间的白屏,我们可以通过加

    相关 Vue学习相关

    组件相关知识 ①组件注册:变量名大小写不敏感,全局注册共有三种方式: Ⅰ:camelCase (驼峰命名法) 的 prop 名需要使用其等价的 kebab-case (