美文网首页
vue动态编译

vue动态编译

作者: Nicholasway | 来源:发表于2017-01-17 11:27 被阅读1341次

动态编译的需求:
如在写一个表格组件时,我们可能需要表格的某一列是可定制化的,比如这一列可实现点击响应一个事件,要实现这样一个需求,可通过写配置文件的方式实现

实现方式1

data(){
      let me = this
      return {
        name:'点我',
        list:[
          {name:'cccc11212121', callback:function(value){
            return {
              template:`<a href="javascript:void(-1)" @click="callback(value)" >{{value.name}}</a>`,
              methods:{
                callback:me.showName
              },
              data(){
                return {
                  value:value
                }
              }
            }
          }},
          {name:'bbbbb'},
          {name:'ccccc'},
          {name:'ddddd'},
          {name:'eeeee'},
          {name:'fffff'},
          {name:'ggggg'}
        ]
      }
    }

之后在子组件使用is动态添加组件方式调用这个回调函数

<component :is='o.callback(o)'></component>

实现方式2

通过vuex方式管理状态

实现方式3

通过vue render方法实现,参看elementui源码

实现方式4

通过作用于插槽实现
在父组件中定义template,通过scope接收子组件的临时变量

<u-list :datas="list" @clickme="showName()">
      <template slot="callback" scope="props">
        <a href="javascript:void(-1)" @click="show(props.text)" >{{props.text["name"]}}</a>
      </template>
    </u-list>

接着在子组件中向父组件传递变量

<li v-else="o.callback">
        <!-- <component :is='o.callback(o)'></component> -->
        <slot name="callback" :text="o"></slot>
      </li>

参考
vue动态组件
vue作用域插槽
elementui

相关文章

  • vue动态编译

    动态编译的需求:如在写一个表格组件时,我们可能需要表格的某一列是可定制化的,比如这一列可实现点击响应一个事件,要实...

  • VUE中如何动态编译js

    需求:动态获取一段字符串类型的js脚本,动态编译它并且可以完美在vue中运行与之交互。实现:动态编译js的方式有e...

  • 改善Java程序建议17

    建议 17: 慎用动态编译。 关于动态编译的代码: 只要静态编译能做的事情,动态编译就能实现。 动态编译时,需要注...

  • 动态代理反射

    动态代理 分类AspectJ编译-静态编译-AspectJ编译编译器JDK动态代理-接口cglib动态代理-子类(...

  • c++编译跨平台动态库

    window编译动态库 linux编译动态库 makefile文件

  • 动态表单实现

    angular动态表单 地址: angular表单 vue动态表单 地址: vue表单

  • Vue问题总结

    django与vue引用冲突时候,需要加 这时候里面只会引用vue的代码 如果需要 动态引用vue代码 vue动态...

  • vue实践中遇到的小难题

    vue动态绑定img src时,出现404,原因在于路径并不会被 webpack 编译,还保持着相对路径的状态。如...

  • Java的动态机制---动态编译

    Java的动态机制---动态编译1 作用 客户写代码,动态编译。 服务器动态加载某些类文件 2 两种做法 通过Ru...

  • Vue 学习笔记

    [TOC] Vue 学习笔记 Vue 源码解析 - 主线流程 Vue 源码解析 - 模板编译 Vue 源码解析 -...

网友评论

      本文标题:vue动态编译

      本文链接:https://www.haomeiwen.com/subject/ekdcrttx.html