如何以编程方式创建Vue.js插槽?

JavaScript Vue.js

小小

2020-04-03

我有以下带有插槽的组件:

<template>
    <div>
        <h2>{{ someProp }}</h2>
        <slot></slot>
    </div>
</template>

由于某些原因,我必须手动实例化此组件。这就是我的做法:

const Constr = Vue.extend(MyComponent);
const instance = new Constr({
    propsData: { someProp: 'My Heading' }
}).$mount(body);

问题是:我无法以编程方式创建插槽内容。到目前为止,我可以创建基于字符串的简单插槽:

const Constr = Vue.extend(MyComponent);
const instance = new Constr({
    propsData: { someProp: 'My Heading' }
});

// Creating simple slot
instance.$slots.default = ['Hello'];

instance.$mount(body);

问题是-我如何以$slots编程方式创建并将其传递给正在使用的实例new

注意:我没有使用完整版本的Vue.js(仅适用于运行时)。因此,我没有Vue.js编译器可用于动态编译模板。

第3992篇《如何以编程方式创建Vue.js插槽?》来自Winter(https://github.com/aiyld/aiyld.github.io)的站点

0个回答

问题类别

JavaScript Ckeditor Python Webpack TypeScript Vue.js React.js ExpressJS KoaJS CSS Node.js HTML Django 单元测试 PHP Asp.net jQuery Bootstrap IOS Android