const _component_Child = _resolveComponent(\\"Child\\")
return (_openBlock(), _createBlock(_component_Child, null, {
- default: _withId(() => [
+ default: _withCtx(() => [
_createElementVNode(\\"div\\")
]),
_: 1 /* STABLE */
(_ctx.ok)
? {
name: \\"foo\\",
- fn: _withId(() => [
+ fn: _withCtx(() => [
_createElementVNode(\\"div\\")
])
}
_renderList(_ctx.list, (i) => {
return {
name: i,
- fn: _withId(() => [
+ fn: _withCtx(() => [
_createElementVNode(\\"div\\")
])
}
const _component_Child = _resolveComponent(\\"Child\\")
return (_openBlock(), _createBlock(_component_Child, null, {
- foo: _withId(({ msg }) => [
+ foo: _withCtx(({ msg }) => [
_createTextVNode(_toDisplayString(msg), 1 /* TEXT */)
]),
- bar: _withId(() => [
+ bar: _withCtx(() => [
_createElementVNode(\\"div\\")
]),
_: 1 /* STABLE */
mode: 'module',
scopeId: 'test'
})
- expect(code).toMatch(`default: _withId(() => [`)
+ expect(code).toMatch(`default: _withCtx(() => [`)
expect(code).toMatchSnapshot()
})
scopeId: 'test'
}
)
- expect(code).toMatch(`foo: _withId(({ msg }) => [`)
- expect(code).toMatch(`bar: _withId(() => [`)
+ expect(code).toMatch(`foo: _withCtx(({ msg }) => [`)
+ expect(code).toMatch(`bar: _withCtx(() => [`)
expect(code).toMatchSnapshot()
})
scopeId: 'test'
}
)
- expect(code).toMatch(/name: "foo",\s+fn: _withId\(/)
- expect(code).toMatch(/name: i,\s+fn: _withId\(/)
+ expect(code).toMatch(/name: "foo",\s+fn: _withCtx\(/)
+ expect(code).toMatch(/name: i,\s+fn: _withCtx\(/)
expect(code).toMatchSnapshot()
})
import { ImportItem } from './transform'
const PURE_ANNOTATION = `/*#__PURE__*/`
-const WITH_ID = `_withId`
type CodegenNode = TemplateChildNode | JSChildNode | SSRCodegenNode
node: FunctionExpression,
context: CodegenContext
) {
- const { push, indent, deindent, scopeId, mode } = context
+ const { push, indent, deindent } = context
const { params, returns, body, newline, isSlot } = node
- // slot functions also need to push scopeId before rendering its content
- const genScopeId =
- !__BROWSER__ && isSlot && scopeId != null && mode !== 'function'
-
if (isSlot) {
// wrap slot functions with owner context
- push(genScopeId ? `${WITH_ID}(` : `_${helperNameMap[WITH_CTX]}(`)
+ push(`_${helperNameMap[WITH_CTX]}(`)
}
push(`(`, node)
if (isArray(params)) {
const _component_foo = _resolveComponent(\\"foo\\")
_push(_ssrRenderComponent(_component_foo, _attrs, {
- default: _withId((_, _push, _parent, _scopeId) => {
+ default: _withCtx((_, _push, _parent, _scopeId) => {
if (_push) {
_push(\`foo\`)
} else {
const _component_foo = _resolveComponent(\\"foo\\")
_push(_ssrRenderComponent(_component_foo, _attrs, {
- default: _withId((_, _push, _parent, _scopeId) => {
+ default: _withCtx((_, _push, _parent, _scopeId) => {
if (_push) {
_push(\`<span data-v-xxxxxxx\${_scopeId}>hello</span>\`)
} else {
const _component_bar = _resolveComponent(\\"bar\\")
_push(_ssrRenderComponent(_component_foo, _attrs, {
- default: _withId((_, _push, _parent, _scopeId) => {
+ default: _withCtx((_, _push, _parent, _scopeId) => {
if (_push) {
_push(\`<span data-v-xxxxxxx\${_scopeId}>hello</span>\`)
_push(_ssrRenderComponent(_component_bar, null, {
- default: _withId((_, _push, _parent, _scopeId) => {
+ default: _withCtx((_, _push, _parent, _scopeId) => {
if (_push) {
_push(\`<span data-v-xxxxxxx\${_scopeId}></span>\`)
} else {
return [
_createVNode(\\"span\\", null, \\"hello\\"),
_createVNode(_component_bar, null, {
- default: _withId(() => [
+ default: _withCtx(() => [
_createVNode(\\"span\\")
]),
_: 1 /* STABLE */