2016-08-20 642 views
1

我想构建非常简单的引导警报组件,但IAM无法弄清楚如何获得我的自定义组件的innerHTMLVueJS:获取自定义组件的innerHTML

代码:

Vue.component('my-alert', { 
    template: '#vue-alert', 
    props: ['type', 'title', 'message'], 
    created: function() {   
    this.message = this.innerHTML; // <---- NOT WORKING 
    } 
}); 

var vm = new Vue({ 
    el: 'body' 
}); 

HTML:

<my-alert type="success" title="Important">My Message here.</my-alert> 

我想表明无论是在它提供的文本,在这种情况下,组件它应该显示My Message here.

Here is example of it

回答

1

好吧,我想通了,我需要使用<slot></slot>

<template id="vue-alert"> 
    <div v-if="show" class="alert alert-{{type}} alert-dismissible" role="alert"> 
    <button @click="removeAlert" type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span> 
    </button> 
    <strong>{{title}}!</strong> <slot></slot> 
    </div> 
</template>