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

Debugger hasn't found the exposed Solid Devtools API. Did you import the setup script?

Open astoilkov opened this issue 1 year ago • 2 comments

The error is thrown regardless of the fact I call attachDevtoolsOverlay(). I don't call attachDevtoolsOverlay() in the entry file because DevTools is blank and doesn't work.

We load the app async in the entry file, something like:

loadApp(async () => {
  await loadFonts()
  const { App } = await import('./App.tsx')
  render(() => <App />, document.body)
})

Also, worth mentioning:

  • we are using Solid in Electron
  • we are using the transform babel plugin
  • calling useLocator() doesn't work at all (couldn't make it work)
  • can't make logger work as well. if i call attachDevtoolsOverlay() in the root it works, but then DevTools is blank

image

astoilkov avatar Jul 05 '23 12:07 astoilkov

interesting the overlay package is importing the setup, so it should always be available: https://github.com/thetarnav/solid-devtools/blob/main/packages/overlay/src/index.tsx#L1 Maybe the import got removed by the bundler for some reason? you could try adding that import manually I'm kinda loading the app asynchronously in my playground too, so it shouldn't be an issue: https://github.com/thetarnav/solid-devtools/blob/main/examples/sandbox/src/index.ts

thetarnav avatar Jul 05 '23 13:07 thetarnav

Ok, yes, you are right. Adding import '@solid-devtools/debugger/setup' in the entry file did work.

If you decide you can close this.

Now the useLocator() doesn't work. I debugged it and registerComponent() is never called and ComponentMap is empty. Should I open a new issue for this?

astoilkov avatar Jul 06 '23 06:07 astoilkov