我正在尝试显示组件的数据,基于属性是真还是假以保持所有的反应性。为此,我首先创建了一个对象数组'Premium content',每个对象都表示要在组件中显示的内容类型。无论“高级激活”是否为真,这些对象中的一个都应该是可见的。有人能帮我找到一个解决方案来实现这一点吗?我对此还很陌生,所以在语法方面,我往往会把事情弄混。
MyComponent:
<template>
<div>
<div class="background-div">
<div class="page-info-inner">
<PremiumContent v-for="item in premiumContent"
:key="item.infoText"
:info-text="item.infoText"
:button-text="item.buttonText"
:button-callback="null"
:subscription-text="item.subscriptionText"
:is-visible="item.isVisible" />
</div>
</div>
</div>
</template>
<script>
import PremiumContent from '../../../components/partials/settings/Premium';
export default {
name: 'MyComponent',
components: {PremiumContent},
data: () => ({
premiumActivated: false,
premiumContent: [
{
infoText: "this is the content that should appear if premiumActivated is false",
buttonText: "button text",
// isVisible: 'if premium activated === false > show this object'
},
{
infoText: "this is the content that should appear if premiumActivated is true",
buttonText: "button text",
subscriptionText: 'extra text',
// isVisible: 'if premium activated === true > show this object'
},
]
}),
可以使用computed
属性,该属性通过isvisible
条件筛选数组。
export default {
//...
data() {
return {
premiumContent: [ /** ... your data here */]
}
},
computed: {
premiumContentFiltered() {
return this.premiumContent.filter(pc => pc.isVisible);
}
}
//... rest of your code
}
<PremiumContent v-for="(item, i) in premiumContentFiltered"
:key="`premium-content-${i}`"
:item="item"
:button-callback="null" />
备注:
item.infotext
是一个最终不能唯一的字符串,因此我使用了:key=“premium-content-${i}
”作为唯一键。:item=item
:也许共享整个对象更好,而不是单独共享每个属性,以保持道具更干净使用v-show
或v-if
和item.isvisible
。
v-show将呈现该元素,但将其保持隐藏,而v-if将不会呈现它,直到isVisible为true。
在下面的 VueJS 2 组件中,我可以将 imgdata 属性添加到 area.questions 数组中的每个问题。它的工作原理 - 我可以从控制台中看到.log存在imgdata具有值的问题。但是,尽管使用了$set它仍然没有反应,并且imgdata不在视图中!我怎样才能使它被动?
根据文档: 或者在某些特定情况下,当只需要使用Mono而Flux无法处理操作时?请建议。
问题内容: 我需要动态加载React组件。 我从用户获取要加载为字符串的组件名称。我正在使用 webpack 。 如何动态加载组件,而不要使用静态import语句。似乎不评估表达式。我想要实现的是这样的事情。 但这似乎不起作用。 问题答案: 基本上,它可以归结为预先创建您将需要的所有块。然后,您只需要一种动态引用它们的方法。这是我基于的解决方案: http://henleyedition.com/
在带有TypeScript和Vuetify应用程序的VueJS中,我有十张图片,分别是picture1.png、picture2.png、picture3.png等。我正在尝试制作
问题内容: 有没有办法将一个组件传递到另一个React组件?我想创建一个模型react组件,并传入另一个react组件以包含该内容。 编辑:这是一个reactJS codepen,说明了我正在尝试做的事情。http://codepen.io/aallbrig/pen/bEhjo 的HTML ReactJS 问题答案: 您可以用来渲染组件包含的任何子代:
我已经看到了在中间访问通量的问题,我想知道为什么我用以下方式成功地在通量中编写逻辑: 首先,我想知道为什么我从未将错误抛出控制台,但在调试时我看到了错误。我还想知道这是如何工作的,为什么我需要变量(它总是产生,即使流可以继续并正常工作)。当我省略