2017-03-22 67 views
0

我在嘗試運行我的Angular2應用程序時出錯。Angular2供應商導入公開模塊錯誤

ERROR in ./src/vendor.browser.ts 
Module not found: Error: Can't resolve 'expose' in '/Users/adrien/Dev/go/src/github.com/adrien3d/base-front/src' 
BREAKING CHANGE: It's no longer allowed to omit the '-loader' suffix when using loaders. 
       You need to specify 'expose-loader' instead of 'expose', 
       see https://webpack.js.org/guides/migrating/#automatic-loader-module-name-extension-removed 
@ ./src/vendor.browser.ts 4:0-31 

下面是有關文件: vendor.browser.ts:

// Vendors 
require("expose?jQuery!jquery"); 

import 'metismenu'; 
import 'bootstrap'; 

// Angular 2 
import '@angular/platform-browser'; 
import '@angular/platform-browser-dynamic'; 
import '@angular/core'; 
import '@angular/common'; 
import '@angular/forms'; 
import '@angular/http'; 
import '@angular/router'; 

// RxJS 
import 'rxjs/add/operator/map'; 
import 'rxjs/add/operator/mergeMap'; 

我不很清楚的看到這個錯誤,因爲我不嘗試使用公開,任何想法的呢?

+1

使用'要求( 「揭發裝載機jQuery的jQuery的?!」);'而不是'要求( 「揭發jQuery的jQuery的?!」);' –

+0

完美,非常感謝你很多 –

+0

np,添加了網頁包參考。 –

回答

1
// Vendors 
require("expose-loader?jQuery!jquery"); 

import 'metismenu'; 
import 'bootstrap'; 

// Angular 2 
import '@angular/platform-browser'; 
import '@angular/platform-browser-dynamic'; 
import '@angular/core'; 
import '@angular/common'; 
import '@angular/forms'; 
import '@angular/http'; 
import '@angular/router'; 

// RxJS 
import 'rxjs/add/operator/map'; 
import 'rxjs/add/operator/mergeMap'; 

參考:https://github.com/webpack-contrib/expose-loader