Advertisement
Guest User

Untitled

a guest
Sep 15th, 2019
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.84 KB | None | 0 0
  1. const crypto = require('crypto');
  2. const VirtualModulesPlugin = require('webpack-virtual-modules');
  3. const virtualModules = new VirtualModulesPlugin();
  4.  
  5. module.exports = {
  6. plugins: [
  7. new webpack.NormalModuleReplacementPlugin(/^module$/, function(resource) {
  8. const origin = resource.dependencies[0].originModule.rawRequest;
  9. const virtualModuleName = `virtual-module-for-${crypto.createHash('md5').update(origin).digest("hex")}`;
  10. virtualModules.writeModule(`node_modules/${virtualModuleName}`,`
  11. import config from 'config';
  12. export default {
  13. config() {
  14. return config['${origin}'] || {};
  15. }
  16. };
  17. `);
  18. resource.request = virtualModuleName;
  19. }),
  20. virtualModules,
  21. ]
  22. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement