vue2使用render,js中写html

1、js部分table.js

bash 复制代码
export default {
  name: "dadeT",
  data() {
    return {
      dades: 6666
    };
  },
  render(h) {
    return h('div', [
      h('span', `组件数据:${this.dades}`),  // 利用data里的dades数据,展示在页面上
      h('span', '89855545')
    ]);
  }
};

2、vue部分

bash 复制代码
<template>
  <div>
    <dadeT></dadeT>
  </div>
</template>

<script>
  import dadeT from "./js/table.js"
  export default{
    data(){
      return {
        dades:6666
      }
    },
    components:{
      dadeT
    },
    mounted() {

    },
    methods:{

    }
  }
</script>

<style>
</style>

3、js也可以这样写

bash 复制代码
export default {
  name: "dadeT",
  data() {
    return {
      dades: 6666
    };
  },
  render(h) {
    return (
      <div>8777777777</div>
    );
  }
};

4、条件判断

bash 复制代码
export default {
  name: "dadeT",
  data() {
    return {
      dades: 6666
    };
  },
  render(h) {
    let text = ""
    if(this.dades == 6666){
      text = "是"
    }else{
      text = "不是"
    }
    return (
      <div>
        <div>{text}</div>
        <div>{text}</div>
      </div>
    );
  }
};

或者

bash 复制代码
export default {
  props: ['showButton'],
  render(h) {
    if (this.showButton) {
      return h('button', '点击我');
    } else {
      return h('input', {
        attrs: {
          type: 'text'
        }
      });
    }
  }
};

5、循环

bash 复制代码
export default {
  data() {
    return {
      items: [
        { id: 1, isVisible: true },
        { id: 2, isVisible: false },
        { id: 3, isVisible: true }
      ]
    };
  },
  render(h) {
    return h('div', this.items.map(item => {
      if (item.isVisible) {
        return h('p', `这是第${item.id}个元素`);
      } else {
        return null;
      }
    }));
  }
};
相关推荐
yinuo41 分钟前
前端跨页面通信终极指南:方案拆解、对比分析
前端
北辰alk1 小时前
Vue 模板引擎深度解析:基于 HTML 的声明式渲染
vue.js
北辰alk1 小时前
Vue 自定义指令完全指南:定义与应用场景详解
vue.js
yinuo1 小时前
前端跨页面通讯终极指南⑨:IndexedDB 用法全解析
前端
北辰alk1 小时前
Vue 动态路由完全指南:定义与参数获取详解
vue.js
北辰alk1 小时前
Vue Router 完全指南:作用与组件详解
vue.js
北辰alk2 小时前
Vue 中使用 this 的完整指南与注意事项
vue.js
xkxnq2 小时前
第二阶段:Vue 组件化开发(第 16天)
前端·javascript·vue.js
北辰alk2 小时前
Vue 插槽(Slot)完全指南:组件内容分发的艺术
vue.js
烛阴2 小时前
拒绝配置地狱!5 分钟搭建 Three.js + Parcel 完美开发环境
前端·webgl·three.js