一、微信小程序自定义组件的默认js文件

  1. Component({
  2. /**
  3. * 可以从父组件获取到的数据
  4. * 组件的属性列表
  5. */
  6. properties: {
  7. },
  8. /**
  9. * 组件自身的固有属性
  10. * 组件的初始数据
  11. */
  12. data: {
  13. },
  14. /**
  15. * 组件的方法列表
  16. */
  17. methods: {
  18. }
  19. })

properties => 组件的属性列表(可以从父组件处获取)
data => 组件的默认属性列表(自身固有属性)
methods => 组件的方法列表 (组件带有的函数)

二、父组件如何向子组件传递参数

父组件向子组件传递参数是通过标签属性的方式
比如:

  1. <Tabs tabs="{{tabs}}">
  2. </Tabs>
  1. Page({
  2. /**
  3. * 页面的初始数据
  4. */
  5. data: {
  6. tabs:[
  7. {
  8. id: 0,
  9. name: "首页",
  10. isActive: true,
  11. },
  12. {
  13. id: 1,
  14. name: "原创",
  15. isActive: false,
  16. },
  17. {
  18. id: 2,
  19. name: "视频",
  20. isActive: false,
  21. },
  22. {
  23. id: 3,
  24. name: "我的",
  25. isActive: false,
  26. }
  27. ]
  28. },
  29. })

父组件js文件中的data对象中已经定义好了一个名为tabs的数组,数组中存放了我们需要传递给子组件的数据
在wxml文件中,我们只需要在标签中添加属性即可,如下

  1. <tabs arr="{{tabs}}"></tabs>
  2. <!--
  3. 1、<tabs></tabs> 是我们的自定义组件
  4. 2、arr是组件中接受数据的对象名称
  5. 3、tabs是我们父组件向子组件传递的数据名称
  6. -->

组件的js文件如下

  1. Component({
  2. /**
  3. * 可以从父组件获取到的数据
  4. * 组件的属性列表
  5. */
  6. properties: {
  7. arr:{
  8. type:"Array", //表示我们接收的数据类型
  9. value:[], // 表示接受的数据的默认值
  10. }
  11. },
  12. /**
  13. * 组件自身的固有属性
  14. * 组件的初始数据
  15. */
  16. data: {
  17. },
  18. /**
  19. * 组件的方法列表
  20. */
  21. methods: {
  22. }
  23. })