Skip to content

[🐞] v1: sync$ causes error with conditional rendering #8205

@RAZRULETEL

Description

@RAZRULETEL

Which component is affected?

Qwik Runtime

Describe the bug

Passing a sync QRL via props to a component - combined with conditional rendering - causes Qwik rendering to fail. Notably, the bug triggers just by passing the QRL, it doesn’t need to be used inside the component.
Error: Sync QRL without containerState

I've researched a bit and found that changing $serialize$ function of QRLSerializer to this, seems to fix the problem:

  $serialize$: (obj, getObjId, _, containerState) => {
    return serializeQRL(obj, {
      $getObjId$: getObjId,
      $containerState$: containerState
    });
  },

Reproduction

https://github.com/RAZRULETEL/sync-qrl-bug-repro

Steps to reproduce

npm install
npm run dev

Open any page with such component and see error

System Info

System:
    OS: Windows 11 10.0.22635
    CPU: (12) x64 AMD Ryzen 5 5600H with Radeon Graphics
    Memory: 2.88 GB / 14.86 GB
  Binaries:
    Node: 24.11.1 - C:\Program Files\nodejs\node.EXE
    npm: 10.8.1 - C:\Program Files\nodejs\npm.CMD
    pnpm: 10.24.0 - C:\Users\MyUser\AppData\Roaming\npm\pnpm.CMD
  Browsers:
    Edge: Chromium (140.0.3485.54)
    Internet Explorer: 11.0.22621.3566
  npmPackages:
    @builder.io/qwik: ^1.18.0 => 1.18.0
    @builder.io/qwik-city: ^1.18.0 => 1.18.0
    typescript: 5.4.5 => 5.4.5
    undici: * => 7.16.0
    vite: 7.2.6 => 7.2.6

Additional Information

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    STATUS-3: solved by V2This issue is solved by the next major version of QwikTYPE: bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions