zhaojinyu 73e6d881c9 first commit 10 kuukautta sitten
..
README.md 73e6d881c9 first commit 10 kuukautta sitten
index.js 73e6d881c9 first commit 10 kuukautta sitten
package.json 73e6d881c9 first commit 10 kuukautta sitten

README.md

expose loader for webpack

Usage

require("expose?libraryName!./file.js");
// Exposes the exports for file.js to the global context on property "libraryName".
// In web browsers, window.libraryName is then available.

This line works to expose React to the web browser to enable the Chrome React devtools:

require("expose?React!react");

Thus, window.React is then available to the Chrome React devtools extension.

Alternately, you can set this in your config file:

module: {
  loaders: [
    { test: require.resolve("react"), loader: "expose?React" }
  ]
}

Also for multiple expose you can use ! in loader string:

module: {
  loaders: [
    { test: require.resolve("jquery"), loader: "expose?$!expose?jQuery" },
  ]
}

The require.resolve is a node.js call (unrelated to require.resolve in webpack processing -- check the node.js docs instead). require.resolve gives you the absolute path to the module ("/.../app/node_modules/react/react.js"). So the expose only applies to the react module. And it's only exposed when used in the bundle.

Documentation: Using loaders

License

MIT (http://www.opensource.org/licenses/mit-license.php)