2015-01-19 18 views

Antwort

25

Ja, es ist möglich. Um Unklarheiten zu vermeiden und für eine einfachere Implementierung, werden wir ein Präfix Hash-Symbol als Markierung Ihrer Konvention verwenden:

require("#./components/SettingsPanel"); 

Dann fügen Sie diese zu Ihrer Konfigurationsdatei (natürlich können Sie es später Refactoring):

var webpack = require('webpack'); 
var path = require('path'); 

var MyConventionResolver = { 
    apply: function(resolver) { 
    resolver.plugin('module', function(request, callback) { 
     if (request.request[0] === '#') { 
     var req = request.request.substr(1); 
     var obj = { 
      path: request.path, 
      request: req + '/' + path.basename(req) + '.js', 
      query: request.query, 
      directory: request.directory 
     }; 
     this.doResolve(['file'], obj, callback); 
     } 
     else { 
     callback(); 
     } 
    }); 
    } 
}; 


module.exports = { 
    resolve: { 
     plugins: [ 
     MyConventionResolver 
     ] 
    } 
    // ... 
}; 
+1

siehe auch: https://github.com/webpack/docs/wiki/list-of-plugins#resolverplugin und https://github.com/webpack/webpack/blob/master/lib/ResolverPlugin.js # L13 – jantimon

Verwandte Themen