返回信息流报错:- v-else-if="scope.row.type == 'video'|| scope.row.type=='flash'|| scope.row.type=='daka'" used on element <template> without corresponding v-if.
不清楚为什么v-else-if没有对应到v-if啊啊啊啊
部分源码如下图
这是一条镜像帖。来源:北邮人论坛 / java-script / #3978同步于 2018/7/6
该镜像源已超过 30 天没有更新,可能在源站已被删除。
JavaScript机器人发帖
请教大佬vue问题( v-else-if XXXXX used on element <template
pambassador
2018/7/6镜像同步5 回复
订阅后,新回复会通过你的通知中心匿名送达。
5 条回复
v-else 元素必须紧跟在带 v-if 或者 v-else-if 的元素的后面,否则它将不会被识别。类似于 v-else,v-else-if 也必须紧跟在带 v-if 或者 v-else-if 的元素之后。
---网上说的。
用两个v-if就没有问题了吧。
具体原因我还没仔细看清楚。不过在el-table-column里,template scope会先被渲染导致后续的v-else-if无法拿到前面的v-if。
可以改写成如下的形式:
```js
<el-table-column label="xxx">
<template scope="scope">
<template v-if="false">
123
</template>
<template v-else-if="true">
321
</template>
</template>
</el-table-column>
```
【 在 PiEgg 的大作中提到: 】
: 具体原因我还没仔细看清楚。不过在el-table-column里,template scope会先被渲染导致后续的v-else-if无法拿到前面的v-if。
: 可以改写成如下的形式:
: [md]
: ...................
赞,完美解决了问题[ema3],应该是scope那里的问题,具体为什么还不懂,可能就是你说的那样,template scope会先被渲染导致后续的v-else-if无法拿到前面的v-if。
【 在 wslyh123 的大作中提到: 】
: v-else 元素必须紧跟在带 v-if 或者 v-else-if 的元素的后面,否则它将不会被识别。类似于 v-else,v-else-if 也必须紧跟在带 v-if 或者 v-else-if 的元素之后。
v-else-if是紧跟在v-if后面的吖,我看官网上这个例子差不多类似。
我试过两个v-if,但是只显示了后面v-if成立的时的结果,前面那个v-if相当于不存在一样。
你可以看看另一个回复,好像有点道理,虽然不太懂为什么。
最后,谢谢啦,又学到了一个新知识【v-else 元素必须紧跟在带 v-if 或者 v-else-if 的元素的后面,否则它将不会被识别】,下次不会在这个地方出错啦
v-if v-else肯定要配对写,lz的问题应该主要是因为scope渲染导致拿不到v-if吧[ema0]
【 在 pambassador (pambassador) 的大作中提到: 】
: v-else-if是紧跟在v-if后面的吖,我看官网上这个例子差不多类似。
: [upload=1][/upload]
: 我试过两个v-if,但是只显示了后面v-if成立的时的结果,前面那个v-if相当于不存在一样。
: ...................