XEn*_*ise 5 javascript reactjs webpack
我正在尝试按照反应教程,我的webpack.config.js文件如下:
var webpack = require("webpack");
var pth = require("path");
module.exports = {
entry: "./src/index.js",
output: {
path: __dirname + "/dist",
filename: "bundle.js"
},
devServer: {
inline: true,
contentBase: './dist',
port: 3000
},
module: {
rules: [
{ test: /\.js$/, exclude: /(node_modules)/, use: 'babel-loader' },
{ test: /\.json$/, exclude: /(node_modules)/, use: 'json-loader' }
]
}
}
Run Code Online (Sandbox Code Playgroud)
虽然我的代码文件如下:我在lib.js中创建了组件,并且在index.js中完成了渲染,最终在index.html的HTML div中调用
lib.js
import React from 'react'
import text from './titles.json'
export const hello = (
<h1 id='title'
className='header'
style={{backgroundColor: 'purple', color: 'yellow'}}>
{text.hello}
</h1>
)
export const goodbye = (
<h1 id='title'
className='header'
style={{backgroundColor: 'white', color: 'red'}}>
{text.goodbye}
</h1>
)
Run Code Online (Sandbox Code Playgroud)
index.js
import React from 'react'
import {render} from 'react-dom'
import {hello, goodbye} from './lib'
const design = {
backgroundColor: 'red',
color: 'white',
fontFamily:'verdana'
}
render(
<div>
{hello}
{goodbye}
</div>,
document.getElementById('react-container')
)
Run Code Online (Sandbox Code Playgroud)
当我运行webpack -w命令时,我遇到以下错误
ERROR in ./src/titles.json
Module parse failed: Unexpected token m in JSON at position 0
You may need an appropriate loader to handle this file type.
SyntaxError: Unexpected token m in JSON at position 0
at Object.parse (native)
at FSReqWrap.readFileAfterClose [as oncomplete] (fs.js:447:3)
@ ./src/lib.js 12:14-38
@ ./src/index.js
ERROR in chunk main [entry]
bundle.js
Cannot read property 'replace' of undefined
Run Code Online (Sandbox Code Playgroud)
我的JSON文件如下:titles.json
{
"hello": "Bonjour!",
"goodbye": "Au Revoir"
}
Run Code Online (Sandbox Code Playgroud)
我的模块版本如下:webpack 4.1.1 json-loader 0.5.7
我使用npm install TIA全局安装了webpack和json-loader
我注意到你正在使用webpack 4.根据json-loader自述文件:
由于webpack> = v2.0.0,默认情况下导入JSON文件将起作用
因此,如果您正在使用webpack >= v2.0.0和json-loader一起,该文件将被转换两次导致该问题.解决方案就是删除json-loader规则.
| 归档时间: |
|
| 查看次数: |
4801 次 |
| 最近记录: |