solid-js icon indicating copy to clipboard operation
solid-js copied to clipboard

"ReferenceError: queueMicrotask is not defined" when calling createResource

Open daveystruijk opened this issue 2 years ago • 2 comments

Getting an error when trying to use solid-js's createResource in nativescript (createSignal works just fine). Was also able to reproduce it in the playground: https://stackblitz.com/edit/nativescript-dominative-solid-2sumqq?file=app%2Fapp.jsx

  System.err: An uncaught Exception occurred on "main" thread.
  System.err: Unable to create application com.tns.NativeScriptApplication: com.tns.NativeScriptException: Error calling module function
  System.err: ReferenceError: queueMicrotask is not defined
  System.err: File: (file: src/webpack:/app/webpack/bootstrap:27:0)
  System.err:
  System.err: StackTrace:
  System.err: load(file: src/webpack:/app/node_modules/.pnpm/[email protected]/node_modules/solid-js/dist/dev.js:351:0)
  System.err:   at createResource(file: src/webpack:/app/node_modules/.pnpm/[email protected]/node_modules/solid-js/dist/dev.js:380:49)
  System.err:   at Chat.location(file: src/webpack:/app/src/App.tsx:25:33)
  System.err:   at (file: src/webpack:/app/node_modules/.pnpm/[email protected][email protected]/node_modules/solid-refresh/dist/solid-refresh.mjs:25:34)
  System.err:   at untrack(file: src/webpack:/app/node_modules/.pnpm/[email protected]/node_modules/solid-js/dist/dev.js:434:0)
  System.err:   at HMRComp.name(file: src/webpack:/app/node_modules/.pnpm/[email protected][email protected]/node_modules/solid-refresh/dist/solid-refresh.mjs:25:34)
  System.err:   at runComputation(file: src/webpack:/app/node_modules/.pnpm/[email protected]/node_modules/solid-js/dist/dev.js:696:0)
  System.err:   at updateComputation(file: src/webpack:/app/node_modules/.pnpm/[email protected]/node_modules/solid-js/dist/dev.js:679:0)
  System.err:   at createMemo(file: src/webpack:/app/node_modules/.pnpm/[email protected]/node_modules/solid-js/dist/dev.js:250:4)
  System.err:   at [solid-refresh]Chat(file: src/webpack:/app/node_modules/.pnpm/[email protected][email protected]/node_modules/solid-refresh/dist/solid-refresh.mjs:22:29)
  System.err:   at (file: src/webpack:/app/node_modules/.pnpm/[email protected]/node_modules/solid-js/dist/dev.js:549:0)
  System.err:   at untrack(file: src/webpack:/app/node_modules/.pnpm/[email protected]/node_modules/solid-js/dist/dev.js:434:0)
  System.err:   at (file: src/webpack:/app/node_modules/.pnpm/[email protected]/node_modules/solid-js/dist/dev.js:545:0)
  System.err:   at runComputation(file: src/webpack:/app/node_modules/.pnpm/[email protected]/node_modules/solid-js/dist/dev.js:696:0)
  System.err:   at updateComputation(file: src/webpack:/app/node_modules/.pnpm/[email protected]/node_modules/solid-js/dist/dev.js:679:0)
  System.err:   at devComponent(file: src/webpack:/app/node_modules/.pnpm/[email protected]/node_modules/solid-js/dist/dev.js:556:0)
  System.err:   at createComponent(file: src/webpack:/app/node_modules/.pnpm/[email protected]/node_modules/solid-js/dist/dev.js:1247:0)
  System.err:   at (file: src/webpack:/app/src/App.tsx:44:13)
  System.err:   at App.location(file: src/webpack:/app/src/App.tsx:52:30)
  System.err:   at (file: src/webpack:/app/node_modules/.pnpm/[email protected][email protected]/node_modules/solid-refresh/dist/solid-refresh.mjs:25:34)
  System.err:   at untrack(file: src/webpack:/app/node_modules/.pnpm/[email protected]/node_modules/solid-js/dist/dev.js:434:0)
  System.err:   at HMRComp.name(file: src/webpack:/app/node_modules/.pnpm/[email protected][email protected]/node_modules/solid-refresh/dist/solid-refresh.mjs:25:34)
  System.err:   at runComputation(file: src/webpack:/app/node_modules/.pnpm/[email protected]/node_modules/solid-js/dist/dev.js:696:0)
  System.err:   at updateComputation(file: src/webpack:/app/node_modules/.pnpm/[email protected]/node_modules/solid-js/dist/dev.js:679:0)
  System.err:   at createMemo(file: src/webpack:/app/node_modules/.pnpm/[email protected]/node_modules/solid-js/dist/dev.js:250:4)
  System.err:   at [solid-refresh]App(file: src/webpack:/app/node_modules/.pnpm/[email protected][email protected]/node_modules/solid-refresh/dist/solid-refresh.mjs:22:29)
  System.err:   at (file: src/webpack:/app/node_modules/.pnpm/[email protected]/node_modules/solid-js/dist/dev.js:549:0)
  System.err:   at untrack(file: src/webpack:/app/node_modules/.pnpm/[email protected]/node_modules/solid-js/dist/dev.js:434:0)
  System.err:   at (file: src/webpack:/app/node_modules/.pnpm/[email protected]/node_modules/solid-js/dist/dev.js:545:0)
  System.err:   at runComputation(file: src/webpack:/app/node_modules/.pnpm/[email protected]/node_modules/solid-js/dist/dev.js:696:0)
  System.err:   at updateComputation(file: src/webpack:/app/node_modules/.pnpm/[email protected]/node_modules/solid-js/dist/dev.js:679:0)
  System.err:   at devComponent(file: src/webpack:/app/node_modules/.pnpm/[email protected]/node_modules/solid-js/dist/dev.js:556:0)
  System.err:   at createComponent(file: src/webpack:/app/node_modules/.pnpm/[email protected]/node_modules/solid-js/dist/dev.js:1247:0)
  System.err:   at (file: src/webpack:/app/src/index.tsx:16:16)
  System.err:   at (file: src/webpack:/app/node_modules/.pnpm/[email protected]/node_modules/solid-js/universal/dist/dev.js:208:0)
  System.err:   at updateFn(file: src/webpack:/app/node_modules/.pnpm/[email protected]/node_modules/solid-js/dist/dev.js:180:5)
  System.err:   at runUpdates(file: src/webpack:/app/node_modules/.pnpm/[email protected]/node_modules/solid-js/dist/dev.js:800:0)
  System.err:   at createRoot(file: src/webpack:/app/node_modules/.pnpm/[email protected]/node_modules/solid-js/dist/dev.js:185:0)
  System.err:   at render(file: src/webpack:/app/node_modules/.pnpm/[email protected]/node_modules/solid-js/universal/dist/dev.js:206:16)
  System.err:   at ./src/index.tsx(file: src/webpack:/app/src/index.tsx:16:0)
  System.err:   at __webpack_require__(file: src/webpack:/app/webpack/bootstrap:24:0)
  System.err:   at __webpack_exec__(file:///data/data/org.nativescript.frontendmobile/files/app/bundle.js:412:39)
  System.err:   at (file:///data/data/org.nativescript.frontendmobile/files/app/bundle.js:413:492)
  System.err:   at __webpack_require__.X(file: src/webpack:/app/webpack/runtime/startup entrypoint:6:0)
  System.err:   at (file:///data/data/org.nativescript.frontendmobile/files/app/bundle.js:413:47)
  System.err:   at (file:///data/data/org.nativescript.frontendmobile/files/app/bundle.js:418:3)
  System.err:   at require(:1:266)

daveystruijk avatar Aug 23 '23 16:08 daveystruijk

We're hacking import alias to let Solid link against universal renderer, this might be one of the side effect of this hack.

This issue might need to be fixed at Solid's side, by providing a dedicated build target for NativeScript.

ClassicOldSong avatar Aug 23 '23 18:08 ClassicOldSong

Wouldn't it be sufficient to provide a shim to queueMicrotask?

Maybe the NativeScript runtime should be the one supporting it.

victor-wm avatar Jul 02 '24 06:07 victor-wm