camwest/react-slot-fill

Can't work since v1.0.0-alpha.2

Closed this issue · 3 comments

I upgraded to v1.0.0-alpha.7 and my project didn't work, then I tried all versions, just v1.0.0-alpha.1 can worked. Now I'm using react@16.0.0-alpha.6, I didn't test newer react version, because some modules removed from react since v16.0.0-alpha.7, some libraries can't build.

Error messages:

React caught an error thrown by Slot. You should fix this error in your code. React will try to recreate this component tree from scratch using the error boundary you provided, AppContainer.

TypeError: Cannot read property 'onComponentsChange' of undefined

The error is located at: 
    in Slot (at ShowDesign.js:24)
    in div (created by Menu)
    in Menu (at ShowDesign.js:20)
    in div (at ShowDesign.js:18)
    in ShowDesign (created by RouterContext)
    in div (at Show.js:202)
    in div (at Show.js:189)
    in div (at Show.js:146)
    in Show (created by inject-Show)
    in inject-Show (created by RouterContext)
    in div (at App.js:46)
    in App (created by inject-App-with-race-prompt-user)
    in inject-App-with-race-prompt-user (created by RouterContext)
    in RouterContext (created by Router)
    in Router (at Root.js:27)
    in DocumentTitle (created by SideEffect(DocumentTitle))
    in SideEffect(DocumentTitle) (at Root.js:37)
    in div (at Root.js:36)
    in Unknown (at Root.js:35)
    in Root (created by inject-Root-with-user)
    in inject-Root-with-user (at index.js:60)
    in Provider (at index.js:59)
    in ApolloProvider (at index.js:58)
    in AppContainer (at index.js:57)

The error was thrown at: 
    at Slot.componentWillMount (http://localhost:3001/static/js/bundle.js:169242:30),
    at mountClassInstance (http://localhost:3001/static/js/bundle.js:41368:17),
    at updateClassComponent (http://localhost:3001/static/js/bundle.js:39327:10),
    at beginWork (http://localhost:3001/static/js/bundle.js:39749:17),
    at performUnitOfWork (http://localhost:3001/static/js/bundle.js:38354:17),
    at workLoop (http://localhost:3001/static/js/bundle.js:38483:27),
    at HTMLUnknownElement.boundFunc (http://localhost:3001/static/js/bundle.js:25766:15),
    at invokeGuardedCallback (http://localhost:3001/static/js/bundle.js:25780:17),
    at invokeGuardedCallback (http://localhost:3001/static/js/bundle.js:25815:35),
    at performWork (http://localhost:3001/static/js/bundle.js:38525:20)

Oh I see. Need use the Provider.

Maybe can show a better message for this case.

@cpunion good suggestion. I'll add a better error to the roadmap