基于vue2.0动态组件及render详解


Posted in Javascript onMarch 17, 2018

如下所示:

<template>
 <div class="hello">
 <h1>{{ msg }}</h1>
 <h2>这里是Boor</h2>
 <component v-bind:my-data="items" v-bind:is="currentView">
  <!-- 组件在 vm.currentview 变化时改变! -->
 </component>
 <a class="explain">直直</a>
 <button v-on:click="addData">点击</button>
 </div>
</template>
<script>
 //import $ from '@/assets/scripts/lib/zepto.min'
 //console.log($);
 //import Vue from 'vue'
 function isEmptyObject(e) {
 var t;
 for (t in e)
  return !1;
 return !0
 }
 function objectLength(o) {
  var len = 0;
  for(var p in o) {
   len++;
  }
  return len;
 }
 let data ={
  c_0:{c:1},
  c_1:{c:2},
  c_2:{c:3},
  c_3:{c:4}
 };
 let num = 0;
 //console.log(objectLength(data));
 const MyComponent = {
 //template: '<h3 v-for="item in items">{{ item.c}}</h3>',
 props: ['myData'],
 data(){
  return{
  //items : myData
  }
 },
 render: function (createElement) {
  debugger;
  let items = this.myData;
   //items = JSON.stringify(items);
  let num = objectLength(items);
 if (!isEmptyObject(items)) {
  debugger;
  return createElement('div', Array.apply(null, { length: num }).map(function (v,index) {
  return createElement('h3', items['c_'+index]['c'].toString())
  }))
 } else {
  return createElement('h1', '没有数据!');
 }
 }
 };
 // 注册
 //Vue.component('my-component', MyComponent);
export default {
 name: 'bar',
 data () {
 return {
  msg: 'Bar',
  fuck: 'Hello',
  items: data,
  currentView: MyComponent
 }
 },
 methods:{
 addData : function(){
  for(let p in data) {
   if(p == 'c_'+num) {
    data[p] = {'c': num };
   } else {
    data['c'+num] = {'c': num };
   }
  }
  num++;
 }
 }
};
</script>
<!-- Add "scoped" attribute to limit CSS to this component only -->
<style scoped>
h1, h2 {
 font-weight: normal;
}
ul {
 list-style-type: none;
 padding: 0;
}
li {
 display: inline-block;
 margin: 0 10px;
}
a {
 color: #42b983;
}
</style>

以上这篇基于vue2.0动态组件及render详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
浅谈tudou土豆网首页图片延迟加载的效果
Jun 23 Javascript
myEvent.js javascript跨浏览器事件框架
Oct 24 Javascript
基于jquery打造的百分比动态色彩条插件
Sep 19 Javascript
将两个div左右并列显示并实现点击标题切换内容
Oct 22 Javascript
jQuery - css() 方法示例详解
Jan 16 Javascript
js实现字符串的16进制编码不加密
Apr 25 Javascript
Jquery对select的增、删、改、查操作
Feb 06 Javascript
jQuery插件实现带圆点的焦点图片轮播切换
Jan 18 Javascript
基于Bootstrap实现tab标签切换效果
Apr 15 Javascript
jQuery Validate 校验多个相同name的方法
May 18 jQuery
vue-cli3.0如何使用CDN区分开发、生产、预发布环境
Nov 22 Javascript
element的el-table中记录滚动条位置的示例代码
Nov 06 Javascript
Vue实现动态创建和删除数据的方法
Mar 17 #Javascript
JS实现将链接生成二维码并转为图片的方法
Mar 17 #Javascript
基于vue1和vue2获取dom元素的方法
Mar 17 #Javascript
解决vue页面DOM操作不生效的问题
Mar 17 #Javascript
vue中实现先请求数据再渲染dom分享
Mar 17 #Javascript
vue 每次渲染完页面后div的滚动条保持在最底部的方法
Mar 17 #Javascript
vue获取当前激活路由的方法
Mar 17 #Javascript
You might like
15种PHP Encoder的比较
2007/03/06 PHP
php echo()和print()、require()和include()函数区别说明
2010/03/27 PHP
详解PHP中array_rand函数的使用方法
2016/09/11 PHP
PHP 与 UTF-8 的最佳实践详细介绍
2017/01/04 PHP
JQUERY的属性选择符和自定义选择符使用方法(二)
2011/04/07 Javascript
原生javascript兼容性测试实例
2013/07/01 Javascript
js设置组合快捷键/tabindex功能的方法
2013/11/21 Javascript
JS实现来回出现文字的状态栏特效代码
2015/10/31 Javascript
js图片放大镜实例讲解(必看篇)
2017/07/17 Javascript
vue父组件异步获取数据传给子组件的方法
2018/07/26 Javascript
Vue 重置组件到初始状态的方法示例
2018/10/10 Javascript
jQuery实现上下滚动公告栏详细代码
2018/11/21 jQuery
el-select数据过多懒加载的解决(loadmore)
2019/05/29 Javascript
[45:17]DOTA2-DPC中国联赛定级赛 Phoenix vs DLG BO3第三场 1月9日
2021/03/11 DOTA
Python入门篇之数字
2014/10/20 Python
Python操作Excel之xlsx文件
2017/03/24 Python
对python中Matplotlib的坐标轴的坐标区间的设定实例讲解
2018/05/25 Python
Python实现批量执行同目录下的py文件方法
2019/01/11 Python
为什么你还不懂得怎么使用Python协程
2019/05/13 Python
Python爬虫实现的根据分类爬取豆瓣电影信息功能示例
2019/09/15 Python
对python中 math模块下 atan 和 atan2的区别详解
2020/01/17 Python
Python +Selenium解决图片验证码登录或注册问题(推荐)
2020/02/09 Python
Python 代码调试技巧示例代码
2020/08/11 Python
纽约通行卡:The New York Pass(免费游览纽约90多个景点)
2017/07/29 全球购物
全球游戏Keys和卡片市场:GamesDeal
2018/03/28 全球购物
新西兰网上购物,折扣店:BestDeals.co.nz
2019/03/20 全球购物
Windows和Linux动态库应用异同
2016/07/28 面试题
国贸专业的职业规划书
2014/03/15 职场文书
老师对学生的评语
2014/04/18 职场文书
警示教育活动总结
2014/05/05 职场文书
中职招生先进个人材料
2014/08/31 职场文书
临时租车协议范本
2014/09/23 职场文书
销售员工作检讨书(推荐篇)
2014/10/18 职场文书
2015年敬老院工作总结
2015/05/18 职场文书
参观监狱警示教育心得体会
2016/01/15 职场文书
高二语文教学反思
2016/02/16 职场文书