2017-05-05 48 views
3

我創建了一個項目:「模塊構建失敗:錯誤:找不到預設‘ES2015’相對於目錄」由以下步驟新創建的蓋茨比項目

npm install -g gatsby 
gatsby new dev-blog 
cd dev-blog 
npm install 

然後我試圖通過項目啓動通過

gatsby develop --host localhost --port 9000 

在這一點上它拋出一個異常:

Failed to require /Users/antkong/wd/blogs/gatsby/dev-blog/html.js 
./html.js 
Module build failed: Error: Couldn't find preset "es2015" relative to directory "/Users/antkong/wd" 

我怎樣才能解決這個問題?

編輯

OS:OSX 10.12.4

Darwin mymac.local 16.5.0 Darwin Kernel Version 16.5.0: Fri Mar 3 16:52:33 PST 2017; root:xnu-3789.51.2~3/RELEASE_X86_64 x86_64 

NPM:3.10.10

節點:6.10.2

完整堆棧跟蹤:

❯❯ npm run develop 
> [email protected] develop /Users/antkong/wd/blogs/gatsby/dev-blog 
> gatsby develop 

Failed to require /Users/antkong/wd/blogs/gatsby/dev-blog/html.js 
./html.js 
Module build failed: Error: Couldn't find preset "es2015" relative to directory "/Users/antkong/wd" 
    at /Users/antkong/wd/blogs/gatsby/dev-blog/node_modules/babel-core/lib/transformation/file/options/option-manager.js:293:19 
    at Array.map (native) 
    at OptionManager.resolvePresets (/Users/antkong/wd/blogs/gatsby/dev-blog/node_modules/babel-core/lib/transformation/file/options/option-manager.js:275:20) 
    at OptionManager.mergePresets (/Users/antkong/wd/blogs/gatsby/dev-blog/node_modules/babel-core/lib/transformation/file/options/option-manager.js:264:10) 
    at OptionManager.mergeOptions (/Users/antkong/wd/blogs/gatsby/dev-blog/node_modules/babel-core/lib/transformation/file/options/option-manager.js:249:14) 
    at OptionManager.init (/Users/antkong/wd/blogs/gatsby/dev-blog/node_modules/babel-core/lib/transformation/file/options/option-manager.js:368:12) 
    at File.initOptions (/Users/antkong/wd/blogs/gatsby/dev-blog/node_modules/babel-core/lib/transformation/file/index.js:212:65) 
    at new File (/Users/antkong/wd/blogs/gatsby/dev-blog/node_modules/babel-core/lib/transformation/file/index.js:135:24) 
    at Pipeline.transform (/Users/antkong/wd/blogs/gatsby/dev-blog/node_modules/babel-core/lib/transformation/pipeline.js:46:16) 
    at transpile (/Users/antkong/wd/blogs/gatsby/dev-blog/node_modules/babel-loader/lib/index.js:46:20) 
    at /Users/antkong/wd/blogs/gatsby/dev-blog/node_modules/babel-loader/lib/fs-cache.js:79:18 
    at ReadFileContext.callback (/Users/antkong/wd/blogs/gatsby/dev-blog/node_modules/babel-loader/lib/fs-cache.js:15:14) 
    at FSReqWrap.readFileAfterOpen [as oncomplete] (fs.js:366:13) 

@ (webpack)-require/lib/webpackRequireEntrypoint.js 1:20-41 

我也使用NVM

❯❯ nvm list                  
->  v6.10.2 
     system 
default -> v6 (-> v6.10.2) 
node -> stable (-> v6.10.2) (default) 
stable -> 6.10 (-> v6.10.2) (default) 
iojs -> N/A (default) 
lts/* -> lts/boron (-> v6.10.2) 
lts/argon -> v4.8.2 (-> N/A) 
lts/boron -> v6.10.2 
+0

我跑這些相同的步驟(如減去蓋茨'安裝new'包你最後的'故宮install'因爲這是沒有必要的),事情只是工作。 –

+0

也許增加一些關於你的環境的信息?節點版本,操作系統等? –

+0

蓋茨比有一個默認的.babelrc,這就是爲什麼初學者不包括他們自己的。 –

回答

0

gabsty new不會產生由babel需要.babelrc。錯誤是由於缺少.babelrc而引起的。

這裏是我的.babelrc內容:

{ 
    "presets": ["react", "es2015", "stage-0"], 
    "env": { 
    "development": { 
     "presets": ["react-hmre"] 
    } 
    } 
} 
+0

Gatsby包含默認的Babel配置,因此網站不需要自己的配置,除非他們需要添加自定義的babel插件。 –

+0

請參閱https://github.com/gatsbyjs/gatsby#configuring-babel –

相關問題