index.js 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. // components/tab/index.js
  2. Component({
  3. relations: {
  4. '../tabs/index': {
  5. type: 'parent',
  6. linked: function(target) {
  7. !this.data.parent && this.setData({
  8. parent: target
  9. });
  10. // 每次被插入到custom-ul时执行,target是custom-ul节点实例对象,触发在attached生命周期之后
  11. }
  12. },
  13. '../combined-tabs/index': {
  14. type: 'parent',
  15. linked: function(target) {
  16. !this.data.parent && this.setData({
  17. parent: target
  18. });
  19. // 每次被插入到custom-ul时执行,target是custom-ul节点实例对象,触发在attached生命周期之后
  20. }
  21. }
  22. },
  23. /**
  24. * 组件的属性列表
  25. */
  26. properties: {
  27. tab: String,
  28. subTab: String,
  29. subKey: String,
  30. key: String,
  31. icon: String,
  32. iconSize: {
  33. type: String,
  34. value: '20'
  35. },
  36. image: Object,
  37. picPlacement: {
  38. type: String,
  39. value: 'top'
  40. }
  41. },
  42. observers: {
  43. '**': function(filed) {
  44. this.updateData(filed);
  45. }
  46. },
  47. /**
  48. * 组件的初始数据
  49. */
  50. data: {
  51. isCurrent: false,
  52. index: 0,
  53. parent: null
  54. },
  55. methods: {
  56. updateData() {
  57. let parent = this.data.parent;
  58. if (!parent) return;
  59. parent.initTabs();
  60. }
  61. }
  62. });