mirror of https://github.com/vuejs/core.git
wip: modifiers
This commit is contained in:
parent
b81415ceac
commit
65c0b31148
|
|
@ -13,7 +13,7 @@ import {
|
|||
createRoot
|
||||
} from '../ast'
|
||||
import { ParserOptions } from '../options'
|
||||
import Tokenizer, { CharCodes, isWhitespace } from './Tokenizer'
|
||||
import Tokenizer, { CharCodes, QuoteType, isWhitespace } from './Tokenizer'
|
||||
import { CompilerCompatOptions } from '../compat/compatConfig'
|
||||
import { NO, extend } from '@vue/shared'
|
||||
import { defaultOnError, defaultOnWarn } from '../errors'
|
||||
|
|
@ -184,18 +184,18 @@ const tokenizer = new Tokenizer(
|
|||
}
|
||||
},
|
||||
ondirmodifier(start, end) {
|
||||
// console.log('.' + getSlice(start, end))
|
||||
;(currentProp as DirectiveNode).modifiers.push(getSlice(start, end))
|
||||
},
|
||||
|
||||
onattribdata(start, end) {
|
||||
currentAttrValue += getSlice(start, end)
|
||||
if (currentAttrStartIndex < 0) currentAttrStartIndex = start - 1
|
||||
currentAttrEndIndex = end + 1
|
||||
if (currentAttrStartIndex < 0) currentAttrStartIndex = start
|
||||
currentAttrEndIndex = end
|
||||
},
|
||||
onattribentity(codepoint) {
|
||||
currentAttrValue += fromCodePoint(codepoint)
|
||||
},
|
||||
onattribend(_quote, end) {
|
||||
onattribend(quote, end) {
|
||||
// TODO check duplicate
|
||||
// if (currentAttrs.has(name)) {
|
||||
// // emit error DUPLICATE_ATTRIBUTE
|
||||
|
|
@ -209,7 +209,10 @@ const tokenizer = new Tokenizer(
|
|||
currentProp!.value = {
|
||||
type: NodeTypes.TEXT,
|
||||
content: currentAttrValue,
|
||||
loc: getLoc(currentAttrStartIndex, currentAttrEndIndex)
|
||||
loc:
|
||||
quote === QuoteType.Unquoted
|
||||
? getLoc(currentAttrStartIndex, currentAttrEndIndex)
|
||||
: getLoc(currentAttrStartIndex - 1, currentAttrEndIndex + 1)
|
||||
}
|
||||
} else {
|
||||
// directive
|
||||
|
|
|
|||
Loading…
Reference in New Issue