vue + ivew Tabs 标签页 自定义标签页 徽标数字动态改变

91 阅读1分钟

1:官网原图(vue2的静态实例)

vue官网截图.png

2:动态实现

1:html部分

   <Tabs type="card">
          <TabPane :label="test1()">
            我是第一个tab
          </TabPane>
          <TabPane :label="test2()">
            我是第二个tab
          </TabPane>
    </Tabs>

2:数据定义(vue3定义初始值)

let dataWrap = reactive({
  test1Count: 0,
  test2Count: 0
});

3:定义函数(vue3函数)

function test1() {
  return h => {
    return h("div", [
      h("span", "test1Tabs"),
      h(resolveComponent("Badge"), {
        count: dataWrap.test1Count
      })
    ]);
  };
}
function test2() {
  return h => {
    return h("div", [
      h("span", "test2Tabs"),
      h(resolveComponent("Badge"), {
        count: dataWrap.test2Count
      })
    ]);
  };
}

4:请求接口获取数据(vue3函数)

function getFun() {
    ***.httpPost("/api/****/*****").then(res => {
      if (res.code == "200") {
         dataWrap.test1Count = res.data.testNum1;// 例如值为 6(数字类型)
         dataWrap.test2Count = res.data.testNum2;/ 例如值为 5(数字类型)
      } 
    });
  }

5:动态修改后效果

动态后图片.jpg