首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未知选项:./. Unknown .预设

未知选项:./. Unknown .预设
EN

Stack Overflow用户
提问于 2015-11-13 03:17:36
回答 5查看 22.2K关注 0票数 26

我使用Babel 6进行es2015和react,这需要babel-preset-es2015babel-preset-react

我在presets中添加了.babelrc属性,但它引发了一个错误:

代码语言:javascript
复制
ERROR in ./src/client/entry.js
Module build failed: ReferenceError: [BABEL] /Users/brick/Dropbox/learncoding/node.js/isomorphic/src/client/entry.js: Unknown option: /Users/brick/Dropbox/learncoding/node.js/isomorphic/.babelrc.presets
    at Logger.error (/Users/brick/Dropbox/learncoding/node.js/isomorphic/node_modules/babel-core/lib/transformation/file/logger.js:58:11)
    at OptionManager.mergeOptions (/Users/brick/Dropbox/learncoding/node.js/isomorphic/node_modules/babel-core/lib/transformation/file/options/option-manager.js:126:29)
    at OptionManager.addConfig (/Users/brick/Dropbox/learncoding/node.js/isomorphic/node_modules/babel-core/lib/transformation/file/options/option-manager.js:107:10)
    at OptionManager.findConfigs (/Users/brick/Dropbox/learncoding/node.js/isomorphic/node_modules/babel-core/lib/transformation/file/options/option-manager.js:168:35)
    at OptionManager.init (/Users/brick/Dropbox/learncoding/node.js/isomorphic/node_modules/babel-core/lib/transformation/file/options/option-manager.js:229:12)
    at File.initOptions (/Users/brick/Dropbox/learncoding/node.js/isomorphic/node_modules/babel-core/lib/transformation/file/index.js:147:75)
    at new File (/Users/brick/Dropbox/learncoding/node.js/isomorphic/node_modules/babel-core/lib/transformation/file/index.js:137:22)
    at Pipeline.transform (/Users/brick/Dropbox/learncoding/node.js/isomorphic/node_modules/babel-core/lib/transformation/pipeline.js:164:16)
    at transpile (/Users/brick/Dropbox/learncoding/node.js/isomorphic/node_modules/babel-loader/index.js:12:22)
    at Object.module.exports (/Users/brick/Dropbox/learncoding/node.js/isomorphic/node_modules/babel-loader/index.js:69:12)
 @ multi main

我的.babelrc文件是:

代码语言:javascript
复制
{
  "presets": [
    "es2015",
    "react"
  ]
}

我可以运行babel src -d lib命令,它可以工作。但是,如果我运行npm start以通过package.json运行babel,则会出现错误。

我认为我可以忽略这个错误,因为应用程序正在运行。但是我想知道为什么这个错误并且不确定它会影响到什么。

我的scripts in package.json是:

代码语言:javascript
复制
"scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "clean": "rm -rf lib",
    "build": "npm run clean && /usr/local/bin/babel src -d lib --experimental",
    "server": "nodemon lib/server/server",
    "dev-server": "node lib/server/webpack",
    "watch-js": "/usr/local/bin/babel src -d lib --experimental -w",
    "start": "npm run watch-js & npm run dev-server & npm run server"
  },

我的entry.js

代码语言:javascript
复制
import React from "react";
import Router from "react-router";
import ReactDOM from "react-dom";
import routes from "./routes";
import DataWrapper from './DataWrapper';
import createBrowserHistory from 'history/lib/createBrowserHistory';

let history = createBrowserHistory();
var data = JSON.parse(document.querySelector('#data').innerHTML);
ReactDOM.render(<DataWrapper data={data}><Router history = {history}>{routes}</Router></DataWrapper>, document.querySelector('#app'));
EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2015-11-15 02:37:23

我发现这个问题是由babel-loaderbabel-core版本引起的。

package.json中,依赖项被声明为^5.3.3,因此它不会更新到6.x。将其更改为>=5.3.3^6.0.0

^的意思是升级子版本,但不升级主版本。

票数 39
EN

Stack Overflow用户

发布于 2015-11-14 12:10:41

确保您的node_modules中有这些预先设置的库。

我有类似但略有不同的错误信息。原因是我试图为babel使用react预置,但是babel-react-preset在我的node_modules.The最终结果中丢失了,因为babel试图使用react库的内容作为预置。

代码语言:javascript
复制
ERROR in ./ui/js/myproject.js
Module build failed: ReferenceError: [BABEL] /home/jsyrjala/myproject/ui/js/myproject.js: Unknown option: /home/jsyrjala/myproject/node_modules/react/react.js.Children
    at Logger.error (/home/jsyrjala/myproject/node_modules/babel-core/lib/transformation/file/logger.js:43:11)
    at OptionManager.mergeOptions (/home/jsyrjala/myproject/node_modules/babel-core/lib/transformation/file/options/option-manager.js:270:18)
    at OptionManager.mergePresets (/home/jsyrjala/myproject/node_modules/babel-core/lib/transformation/file/options/option-manager.js:333:16)
    at OptionManager.mergeOptions (/home/jsyrjala/myproject/node_modules/babel
票数 2
EN

Stack Overflow用户

发布于 2017-01-18 08:56:52

我可以使用babel src --out-dir lib,但不能使用npm run XXX。我在我的机器上安装了babel- CLI @ 6.18.0CLI,在安装babel-cli@ locally项目之后,它可以与npm run一起工作。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33685365

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档