胡子哥哥
2019-03-13 18:15:00
Vue中如何實現類似效果? render函數嗎?function App() { return [1, 2, 3].map(index => { if (index === 1) return <p className="a">one</p>; if (index === 3) return <p className="b">two</p>; return <p>three</p>; });}
3 回答

ibeautiful
TA貢獻1993條經驗 獲得超6個贊
簡單結構,使用 template 標簽
<template>
<ul class="list">
<li v-for="(item, index) in list" :key="index" class="item">
<template v-if="item.type === 1">
<h2>Type1</h2>
</template>
<template v-if="item.type === 2">
<h2>Type2</h2>
</template>
<template v-if="item.type === 3">
<h2>Type3</h2>
</template>
</li>
</ul>
</template>
復雜結構,使用 動態組件
<template>
<ul class="list">
<li v-for="(item, index) in list" :key="item" class="item">
<componnet :is="componnetMap[item.type]"></componnet>
</li>
</ul>
</template>
當然,也可以使用 functional Component
添加回答
舉報
0/150
提交
取消