【发布时间】:2019-06-24 08:59:32
【问题描述】:
所以我能够使用 webpack 和 babel 创建自己的响应环境,但是,当我尝试复制我对 react 和 webpack 所做的操作时,我在 reactjs 文件的传递代码中遇到语法错误。
例如,转译文件中的“require react”语句失败。任何想法为什么会发生这种情况?是不是只能用 Babel 不用 webpack 来创建 react 环境?
提前感谢您的任何回答!
编辑:下面是我只使用 Babel 的设置
babel.config.js 文件
module.exports = function (api) {
api.cache(true);
const presets = ["@babel/preset-env", "@babel/preset-react"];
return {
presets
};
}
下面的reactTest.js 文件
var React = require('react')
var ReactDOM = require('react-dom')
class App extends React.Component{
render(){
return(
<div>test!</div>
)
}
}
ReactDOM.render(<App />, document.getElementById('app'))
下面的package.json
{
"name": "webpack-babel-learning",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"build": "babel src -d lib"
},
"author": "",
"license": "ISC",
"devDependencies": {
"@babel/cli": "^7.2.3",
"@babel/core": "^7.2.2",
"@babel/preset-env": "^7.3.1",
"@babel/preset-react": "^7.0.0"
},
"dependencies": {
"react": "^16.7.0",
"react-dom": "^16.7.0"
}
}
如果您还需要什么,请告诉我。抱歉回复晚了正在做晚饭。
【问题讨论】:
-
当然是这样,Babel 和 Webpack 是两个完全独立的库,做着完全不同的事情。显示您的设置,即 Babel 配置、目标节点版本等
-
虽然有可能,但它可能会让人难以理解示例。但这是可以完成的。但是你不能使用 JSX 语法和其他一些细节。
-
@GarrettMotzner 你不能在没有 Webpack 的情况下使用 JSX 语法吗?我高度对此表示怀疑。
-
哎呀,我的意思是通天塔。 :)
-
但是,我现在很困惑,@noobcoderiam。您要删除什么组件? Webpack 还是 babel?因为你的描述和标题似乎不一致。
标签: javascript node.js reactjs babeljs