博客列表 >第25章 0119-组件的知识,学习心得,笔记(Vue,组件传参)

第25章 0119-组件的知识,学习心得,笔记(Vue,组件传参)

努力工作--周工--Robin
努力工作--周工--Robin原创
2021年02月01日 13:41:56531浏览

今天所学心得、笔记

1、父组件,向子组件传参

  1. <div id="app">
  2. <h2>{{pmsg}}</h2>
  3. <title-item title="父组件静态传值"></title-item>
  4. <title-item :title="ptitle" content="示例传多个值,这个采用静态传值"></title-item>
  5. </div>
  6. <script src="vue.js"></script>
  7. <script>
  8. const vm = new Vue({
  9. el: "#app",
  10. data() {
  11. return {
  12. pmsg: "这是来自父组件的数据",
  13. ptitle: "父组件,动态传的值...",
  14. }
  15. },
  16. components: {
  17. titleItem: {
  18. props: ["title","content"],
  19. data() {
  20. return {
  21. smsg: "子组件数据...",
  22. };
  23. },
  24. template:`<h3>{{smsg +"---"+ title +"---"+ content}}</h3>`,
  25. }
  26. }
  27. })
  28. </script>

2、子组件,向父组件传参

  1. <div id="app">
  2. <h2 :style="{fontSize: fontSize + 'px'}">{{pmsg}}</h2>
  3. <title-item @enlarge-text="handle($event)"></title-item>
  4. </div>
  5. <script src="vue.js"></script>
  6. <script>
  7. const vm = new Vue({
  8. el: "#app",
  9. data() {
  10. return {
  11. pmsg: "这是来自父组件的数据",
  12. fontSize: 10,
  13. }
  14. },
  15. methods: {
  16. handle(ev) {
  17. this.fontSize += ev;
  18. }
  19. },
  20. components: {
  21. titleItem: {
  22. template:`<button @click="$emit('enlarge-text', 5)">放大父组件字体</button>`,
  23. }
  24. }
  25. })
  26. </script>

3、父子组件,双向传参

  1. <div id="app">
  2. <h3>{{titelText}}</h3>
  3. <h3>点击了 {{count}} 次</h3>
  4. <br>
  5. <btn-inc :count="count" @count-add="handle($event)"></btn-inc>
  6. </div>
  7. <script src="vue.js"></script>
  8. <script>
  9. const vm = new Vue({
  10. el: '#app',
  11. data() {
  12. return {
  13. titelText: "组件之间,双向传值......",
  14. count: 0,
  15. }
  16. },
  17. methods: {
  18. handle(event) {
  19. this.count += event;
  20. }
  21. },
  22. components: {
  23. btnInc: {
  24. props: ["count"],
  25. template:`
  26. <button @click="$emit('count-add', 10)">点击了 {{count}} 次</button>
  27. `,
  28. }
  29. }
  30. })
  31. </script>
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议