Tôi nhận được các lỗi sau đây với phản ứng-router, các lỗi của nó đề cập đến ngoại hình như nó nằm ngoài mã ứng dụng của tôi, nhưng với thư viện phản ứng-router chính nó:Webpack babel es6 cho tôi lỗi với mô-đun 1.0 "không tìm thấy mô-đun phản ứng-router"?
ERROR in ./~/react-router/lib/Router.js
Module not found: Error: Cannot resolve module 'history/lib/createHashHistory' in /Users/kmartinez/apache/www/reactroutesample/node_modules/react-router/lib
@ ./~/react-router/lib/Router.js 25:35-75
ERROR in ./~/react-router/lib/useRoutes.js
Module not found: Error: Cannot resolve module 'history/lib/Actions' in /Users/kmartinez/apache/www/reactroutesample/node_modules/react-router/lib
@ ./~/react-router/lib/useRoutes.js 15:25-55
ERROR in ./~/react-router/lib/useRoutes.js
Module not found: Error: Cannot resolve module 'history/lib/useQueries' in /Users/kmartinez/apache/www/reactroutesample/node_modules/react-router/lib
@ ./~/react-router/lib/useRoutes.js 17:28-61
ERROR in ./~/react-router/lib/match.js
Module not found: Error: Cannot resolve module 'history/lib/createMemoryHistory' in /Users/kmartinez/apache/www/reactroutesample/node_modules/react-router/lib
@ ./~/react-router/lib/match.js 13:37-79
ERROR in ./~/react-router/lib/match.js
Module not found: Error: Cannot resolve module 'history/lib/useBasename' in /Users/kmartinez/apache/www/reactroutesample/node_modules/react-router/lib
@ ./~/react-router/lib/match.js 17:29-63
Mọi thứ đã được làm việc khi tôi đang sử dụng cú pháp "JSX", nhưng ngay khi tôi thêm vào "babel-es2015-preset" vào webpack của tôi và muốn bắt đầu chuyển sang ES6/ES2015, tôi đã nhận được các lỗi ở trên. Đưa cái gì?
module.exports = {
entry: './app/App.js',
output: {
filename: 'public/bundle.js',
},
module: {
loaders: [
{
test: /\.jsx?$/,
exclude: /(node_modules|bower_components)/,
loader: 'babel',
query: {
presets: ['es2015','react']
}
}
]
}
}
Tôi đang sử dụng phiên bản mới nhất của phản ứng-bộ định tuyến, phản ứng và babel. Package.json chứa sau:
"babel-core": "^6.2.1",
"babel-loader": "^6.2.0",
"babel-preset-es2015": "^6.1.18",
"react-dom": "^0.14.3",
"webpack": "^1.12.9",
"react": "^0.14.3",
"react-dom": "^0.14.3",
"react-router": "^1.0.0",
"babel-preset-react": "^6.1.18",
mã hiện tại của tôi chứa cả cú pháp JSX trong một số tác phẩm, và cú pháp nhập khẩu ES6/ES2015 trong những người khác. Nếu có bộ bộ tải tốt hơn hoặc nếu tôi định cấu hình sai gói webpack, vui lòng thông báo!
Các dòng duy nhất tôi có trong App.js của tôi là:
import React from 'react';
import ReactDOM from 'react-dom';
import {Router, Route} from 'react-router';
Nếu tôi nhận xét ra rằng dòng thứ ba, sau đó các lỗi đầu tiên nêu ra đi, nhưng tôi cần phải sử dụng phản ứng-router!
Tại sao tính năng này chỉ hoạt động với JSX? – Rolando
'lịch sử' là sự phụ thuộc của 'phản ứng-bộ định tuyến'. Nếu bạn không nhập nó, nó sẽ không ném lỗi. – loganfsmyth
Tôi đã cài đặt lịch sử nhưng lỗi này vẫn hiển thị. Giờ tôi không còn ý tưởng nữa. Bạn có bất kỳ gợi ý nào khác cho vấn đề này không? –