gpt4 book ai didi

javascript - 如何将组件作为 prop 传递给 Vue.js 中的另一个组件

转载 作者:行者123 更新时间:2023-11-30 13:55:10 24 4
gpt4 key购买 nike

我想将一个组件(比如说组件 B)作为 prop 传递给另一个组件(我们称之为组件 A)并在 Vue.js 中的组件 A 中显示组件 B:

html:

<compA title="Title By Mazoo" content={compB}></compA>

js:

Vue.component('compA', {
template: '<div>{{content}}</div> ',
props: {
content: ''
}
});

Vue.component('compB', {
template: '<div> Various html tags</div> ',

});

我知道上面的代码是错误的,在 React 中我可以很容易地做到这一点:

<compA title="My title" content={<compB />} />

class compA extends React.Component {
render() {
return (
<div>
{this.props.content}
</div>

);
}
}

class compB extends React.Component {
render() {
return (
<div>
Lots of HTML tags, etc
</div>

);
}
}

最佳答案

看来你需要slots .在 compA 中定义一个插槽,然后将 compB 作为 compA 的子项包括在内:

Vue.component('compA', {
template: '<div><slot></slot></div> '
});

Vue.component('compB', {
template: '<div> Various html tags</div>',
});

在你的模板中:

<div id="app">
<comp-a><comp-b></comp-b></comp-a>
</div>

关于javascript - 如何将组件作为 prop 传递给 Vue.js 中的另一个组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57438754/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com