1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
| const {
| ID,
| hasOwn,
| addRawAttr
| } = require('../util')
|
| module.exports = function parseBlock (el, parent) {
| if (el.tag === 'template' && !hasOwn(el.attrsMap, ID)) {
| /**
| * <current-user v-slot="{ user }">
| * {{ user.firstName }}
| * </current-user>
| */
| addRawAttr(el, ID, parent.attrsMap[ID])
| } else if (el.tag === 'block') {
| el.tag = 'template'
| const vForKey = el.key
| if (vForKey) {
| delete el.key
| el.children.forEach((childEl, index) => {
| const childVForKey = childEl.key
| if (childVForKey) {
| childEl.key = `${childVForKey}+'_'+${vForKey}+'_${index}'`
| } else {
| childEl.key = `${vForKey}+'_${index}'`
| }
| })
| }
| }
| }
|
|