tree-body.vue 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. <template>
  2. <view >
  3. <view class="meter-statistic-node" >
  4. <tree-node v-for="(item,i) in meterList"
  5. :ref="'tree-node'+i" @switchBtn="switchBtn"
  6. @query="query" :role="role" :level="meterList.length==1?0:1" :showPark="showPark"
  7. :key="i" :node="item" :childInfo="childInfo" :rootnode="item" ></tree-node>
  8. </view>
  9. </view>
  10. </template>
  11. <script>
  12. import TreeNode from './tree-node.vue';
  13. export default {
  14. components: {
  15. TreeNode
  16. },
  17. props: {
  18. meterList:{
  19. type: Array,
  20. default() {
  21. return [];
  22. }
  23. },
  24. childInfo: Object, //公司属性
  25. elderStatus: false,
  26. role:false,
  27. showPark:false,
  28. },
  29. methods:{
  30. switchBtn(node,key){
  31. this.$emit('switchBtn',node,key)
  32. },
  33. toggle(){
  34. // for(var i in this.meterList){
  35. // this.$nextTick(()=>{
  36. // this.$refs['tree-node'+i].toggle()
  37. // })
  38. // }
  39. },
  40. query(item){
  41. this.$emit('query',item)
  42. },
  43. },
  44. data() {
  45. return {
  46. treeData: {
  47. name: 'Root',
  48. children: [
  49. {
  50. name: 'Child 1',
  51. children: [
  52. { name: 'Grandchild 1.1' },
  53. { name: 'Grandchild 1.2' }
  54. ]
  55. },
  56. {
  57. name: 'Child 2',
  58. children: [
  59. { name: 'Grandchild 2.1' },
  60. { name: 'Grandchild 2.2' }
  61. ]
  62. }
  63. ]
  64. }
  65. };
  66. }
  67. };
  68. </script>
  69. <style lang="scss" scoped>
  70. .meter-statistic-node {
  71. //margin-top: 32rpx;
  72. //padding-top: 12rpx;
  73. padding-bottom: 20px;
  74. margin: 0 32rpx;
  75. background-color: #fcfafa;
  76. }
  77. </style>