return function render(_ctx, _cache) {
with (_ctx) {
- const { createVNode: _createVNode, Fragment: _Fragment, openBlock: _openBlock, createBlock: _createBlock } = _Vue
+ const { toDisplayString: _toDisplayString, createVNode: _createVNode, Fragment: _Fragment, openBlock: _openBlock, createBlock: _createBlock } = _Vue
return (_openBlock(), _createBlock(_Fragment, null, [
- _createVNode(\\"div\\", { textContent: text }, null, 8 /* PROPS */, [\\"textContent\\"]),
+ _createVNode(\\"div\\", {
+ textContent: _toDisplayString(text)
+ }, null, 8 /* PROPS */, [\\"textContent\\"]),
_createVNode(\\"div\\", { innerHTML: html }, null, 8 /* PROPS */, [\\"innerHTML\\"]),
_createVNode(\\"div\\", null, \\"test\\"),
_createVNode(\\"div\\", { style: {\\"color\\":\\"red\\"} }, \\"red\\"),
expect((ast.children[0] as PlainElementNode).codegenNode).toMatchObject({
tag: `"div"`,
props: createObjectMatcher({
- textContent: `[test]`
+ textContent: {
+ arguments: [{ content: 'test' }]
+ }
}),
children: undefined,
patchFlag: genFlagText(PatchFlags.PROPS),
expect((ast.children[0] as PlainElementNode).codegenNode).toMatchObject({
tag: `"div"`,
props: createObjectMatcher({
- textContent: `[test]`
+ textContent: {
+ arguments: [{ content: 'test' }]
+ }
}),
children: undefined, // <-- children should have been removed
patchFlag: genFlagText(PatchFlags.PROPS),
import {
DirectiveTransform,
createObjectProperty,
- createSimpleExpression
+ createSimpleExpression,
+ TO_DISPLAY_STRING,
+ createCallExpression
} from '@vue/compiler-core'
import { createDOMCompilerError, DOMErrorCodes } from '../errors'
return {
props: [
createObjectProperty(
- createSimpleExpression(`textContent`, true, loc),
- exp || createSimpleExpression('', true)
+ createSimpleExpression(`textContent`, true),
+ exp
+ ? createCallExpression(
+ context.helperString(TO_DISPLAY_STRING),
+ [exp],
+ loc
+ )
+ : createSimpleExpression('', true)
)
]
}