I’m not entirely certain of this, but I don’t think that the semantics of resolving a module specifier string are themselves a facet of the ES spec. However, I think the issue you’re describing may already be addressed in the implementations so far (Safari 10.1, Chrome Canary, FF Nightly) because the paths are treated like any other URI and can therefore begin with "/".
So if we have a module at "www.host.foo/foo/foo.js" with the following content: ``` import bar from 'bar.js' import baz from '/baz.js' ``` ...then it looks for "www.host.foo/foo/bar.js" and "www.host.foo/baz.js". I’m not sure if browsers are currently taking into account the `<base>` element when doing this, but this is the behavior I’ve observed so far, and it seems consistent with how other resource linking works in the browser (e.g. imports in CSS files). Node, which doesn't support `import` yet, maybe trained us a bit to see module specifiers a different way. I’m not sure what the solution will end up being there. The "/" is already taken to mean _system_ root rather than package root I think, and paths without any slashes have special resolution behavior that's nothing like URIs.
_______________________________________________ es-discuss mailing list es-discuss@mozilla.org https://mail.mozilla.org/listinfo/es-discuss