single-spa / single-spa-ember

Helper functions for using single-spa and ember together.
Apache License 2.0
6 stars 4 forks source link

Build should exclude `single-spa` from vendor bundle #20

Open jaydgruber opened 3 years ago

jaydgruber commented 3 years ago

With a new app built with single-spa Ember, I get the warning: https://single-spa.js.org/error/?code=41 ("single-spa is loaded on the page multiple times") whenever the Ember app mounts. Other single-spa applications are using Webpack, so have externals: ['single-spa'] in their webpack config.

I've tried a few things to accomplish the same in Broccoli, but with no success yet.

Practical impact: with multiple instances of single-spa on the page, I have been unable to get navigateToUrl working correctly, so every transition between applications is causing a full page reload.

jaydgruber commented 3 years ago

I think perhaps the problem is that ember-auto-import is not handling pass-through of config for webpack externals correctly. https://github.com/ef4/ember-auto-import/issues/412#issuecomment-853364183

jaydgruber commented 3 years ago

note: the project running into this issue is using "ember-auto-import": "^1.10.1"

It is possible that the ember-auto-import 2.x major bump, which is also a webpack 4 -> 5 upgrade might be needed.

joeldenning commented 3 years ago

I don't know much about the ember build process, but yes single-spa should be marked as a webpack external. Webpack externals work in both webpack 4 and webpack 5, but I don't know about ember-auto-import.