我在渲染组件时遇到奇怪的问题。
<app-content-switcher :state="!!selectedProductDetails">
<template slot="up">
<product-d-p :product-id="selectedProductDetails.id">
<template slot-scope="{data: product, loading, error}">
<label v-if="loading">Loading</label>
<div v-else-if="product">
{{product}}
</div>
<label v-else-if="error">Error</label>
</template>
</product-d-p>
</template>
<template slot="down">
Nope
</template>
</app-content-switcher>
AppContentSwitcher非常简单。
<template>
<div>
<slot
name="up"
v-if="state"
/>
<slot
name="down"
v-else
/>
</div>
</template>
<script>
export default {
name: "AppContentSwitcher",
props: {
state: {
type: Boolean,
required: true
}
}
}
</script>
这是怎么了?如何解决?
答案 0 :(得分:1)
我找到了解决方法。我创建了方法:
getSelectedProductDetailsId: function (){
return this.selectedProductDetails?.id
}
它有效:)
我还是不明白为什么我的第一个解决方案不起作用。