搜尋

首頁  >  問答  >  主體

javascript - vue 拼接出來的元件有什麼方法可以讓元件生效嘛

專案中用到element-ui, 比如說我要動態產生N個元件。
<template>

<p class="search" ref="search" v-html="sHtml">

</p>

</template>

#<script type="text/javascript">

export default {
    data() {
        return {
            sHtml: '',
        }
    },
    props: {
        con: {
            type: Array
        }
    },
    created() {
        this.con.map((v, i) => {
            this.sHtml += '<el-'+ v.type +' class="'+ v.style +'" placeholder="'+ v.placeholder +'" v-model="'+ v.name +'"></el-' + v.type +'>';
        });
    },
}

</script>

有什麼辦法可以讓element外掛渲染出在頁面中呢?

阿神阿神2734 天前769

全部回覆(5)我來回復

  • 仅有的幸福

    仅有的幸福2017-06-26 10:56:13

    直接在引用組件的地方v-for不行。 。

    回覆
    0
  • 黄舟

    黄舟2017-06-26 10:56:13

    直接一點不行嗎,例如

        
     
     <p class="search" ref="search">
         <el-input  v-model="keyFrom.id" size="small" placeholder="请输入内容"></el-input>
     </p>

    回覆
    0
  • 世界只因有你

    世界只因有你2017-06-26 10:56:13

    現在不支援編譯html了,1.0的時候可以

    回覆
    0
  • 習慣沉默

    習慣沉默2017-06-26 10:56:13

    直接使用v-for,透過資料【array】渲染元件

    回覆
    0
  • PHP中文网

    PHP中文网2017-06-26 10:56:13

    可以參考:https://cn.vuejs.org/v2/guide...動態組件

    <component v-for="item in con" :is="item.name"></component>

    回覆
    0
  • 取消回覆