javascript - 如何将动态变量传递给 'component' 然后显示它 - VueJS

标签 javascript vue.js vuejs2 vue-component

我无法在我的组件中显示变量(这是图像的链接),我迷路了......

(为了帮助您,我在表格中单击打开 pdf 的图标)

谢谢你!

Vue.component('modal', {
    template: '#modal-template-pdf',
    props: {
        lien: String
    }
});

let appCompta = new Vue({
        data: {
            showModalActive: false,
            currentModalPdfLink: '',
        }
}).$mount('#'+id+' #app-compta')
    
    
    
<img slot="apercu" slot-scope="props" class="iconeged main" src="images/ico_pdf.png"
             v-bind:currentModalPdfLink='props.row.imglien'
             @click="showModalActive = true"
        >

<modal v-if="showModalActive" @close="showModalActive = false" v-bind:lien="currentModalPdfLink">
        <h3 slot="header">Aperçu PDF</h3>
    </modal>

    <script type="text/x-template" id="modal-template-pdf">
        <transition name="modal">
            <div class="modal-mask">
                <div class="modal-wrapper">
                    <div class="modal-container">

                        <div class="modal-header">
                            <slot name="header">
                                default header
                            </slot>
                        </div>

                        <div class="modal-body">
                            <slot name="body">
                                {{currentModalPdfLink}}
                                <iframe height='100%' width='100%' frameborder='0' :src="currentModalPdfLink"/>
                            </slot>
                        </div>

                        <div class="modal-footer">
                            <slot name="footer">
                                <button class="modal-default-button" @click="$emit('close')">
                                    FERMER
                                </button>
                            </slot>
                        </div>
                    </div>
                </div>
            </div>
        </transition>
    </script>

最佳答案

我假设 currentModalPdfLink 是您的 pdf 链接? 您传递的 prop 的名称是 src,因此您需要在组件中使用相同的名称引用它:

Vue.component('modal', {
    template: '#modal-template-pdf',
    props: ['src']
});

关于javascript - 如何将动态变量传递给 'component' 然后显示它 - VueJS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48830484/

相关文章:

javascript - 来自 AmpersandJS 的跨源请求

javascript - 在 jQuery 插件 dropdown.js 中添加更改事件的回调

javascript - 从 CRM 2011 表单的表单标题中检索字段

vue.js - Vue : Limit characters in text area input, 截断过滤器?

javascript 在继续之前等待整个函数被执行

vue.js - 删除 Vue js 路由 url 标签

javascript - 将 Vuejs 单文件组件中的模板作为外部 HTML 文件导入

javascript - 如何在单文件组件中扩展另一个 VueJS 组件? (ES6 加载器)

javascript - VueJS : `v-for` not rendering elements

javascript - 如何告诉vuefire的firestore在 "created"钩子(Hook)之后执行?