2015-03-13 72 views
0

我想編譯我的ES6類成爲將在瀏覽器中工作的東西。不幸的是,當我運行一飲而盡,我得到以下錯誤ES6項目不能編譯,因爲模塊沒有找到

Error: Cannot find module 'IDB' from 'my-project/src' 

所以,只是爲了讓項目結構

my-project/ 
    gulpfile.js 
    src/ 
     app.js 
     IDB.js 

這就是它的一個想法。在src模樣的文件:

app.js

import IDB from 'IDB'; 

class View { 
    constructor(options) { ... } 
    render() { ... } 
} 

IDB.js

export class IDB { 
    constructor(options) { ... } 
    render() { ... } 
} 

最後,我gulpfile.js樣子:

gulp.task('default', function() { 
    browserify('./src/app.js', { debug: true }) 
     .transform(to5ify) 
     .bundle() 
     .pipe(source('bundle.js')) 
     .pipe(buffer()) 
     .pipe(sourcemaps.init({loadMaps: true})) 
     .pipe(sourcemaps.write('./')) // writes .map file 
     .pipe(gulp.dest('./build')); 
}); 

所以,出於某種原因它不能解決依賴關係。任何建議可能是錯誤的?

回答

1

在你IDB.js文件,將其更改爲

export default class IDB { 
    constructor(options) { ... } 
    render() { ... } 
} 

這應該正確地導出IDB類的模塊。 並在app.js中將導入更改爲此文件的相對路徑:

import IDB from './IDB'; 
相關問題