Как правильно подключить react-router-dom к моему сайту? Т.к страница /Catalog отображается только тогда, когда в коде напрямую вставлен тег как в строке после < /Routes> .Иначе (если оставить только в route) просто пустая страница.
PHP
|
1 |
import React from "react"; import styles from "./App.module.scss"; import { BrowserRouter, Route, Routes } from "react-router-dom"; import Catalog from "./page/catalog/Catalog"; function App() { return ( <div className={styles.App}> <BrowserRouter> <Routes> <Route path={"/Catalog"} element={<Catalog></Catalog>} ></Route> </Routes> {/* <Catalog></Catalog> */} </BrowserRouter> </div> ); } export default App; |
webpack.config.js
PHP
|
1 |
const path = require("path"); const HtmlWebpackPlugin = require("html-webpack-plugin"); module.exports = { entry: { filename: path.resolve(__dirname, "src/index.tsx") }, output: { path: path.resolve(__dirname, "dist"), filename: '[name][contenthash].js', clean: true, }, module: { rules: [ { test: /.(html)$/, use: ['html-loader'] }, { test: /.(js|jsx)$/, exclude: /node_modules/, use: ["babel-loader"], }, { test: /.tsx?$/, use: 'ts-loader', exclude: '/node_modules/' }, { test: /.(module.scss|scss)$/, use: [ { loader: "style-loader", }, { loader: "css-loader", options: { modules: true, url : false }, }, { loader: "sass-loader", }, ], }, { test: /.(png|jpe?g|gif|webp)$/i, use: [ { loader: 'file-loader', options:{ name: '[name].[ext]', outputPath: 'images' } }, ], }, ], }, resolve: { extensions: [".*", ".js", ".jsx", '.ts', '.tsx',], }, plugins: [ new HtmlWebpackPlugin({ title: "Мир", filename: 'index.html', template: "./src/index.html", }), ], devServer: { port: 3002, hot: true, historyApiFallback: true, static:{ directory: path.join(__dirname, 'dist') } }, mode: 'development' }; |
Использую для создания сайта Webpack + typescript + react
Дополнительно:
Для решения данной проблемы вы можете воспользоваться услугами фрилансеров. Мы выполним необходимую работу быстро и качественно.
Оставить комментарий Отменить
Ответы
- Есть ответ! к записи Как уменьшить масштаб меньше 100% в Windows 10 (22H2)
- Есть ответ! к записи Аналоги CloudFlare в России?
- Есть ответ! к записи Аналоги CloudFlare в России?
- Есть ответ! к записи Как называется человек, который дизайн придумает для сайта и сверстает его?
- Есть ответ! к записи Можно ли установить Яндекс.Диск на АльтЛинукс?
- Есть ответ! к записи Картинки мутные только на сафари, есть выход?
- Есть ответ! к записи Keenetic. Как настроить SSTP клиент с сертификатом?
- Есть ответ! к записи Чем заменить executor в aiogram 3?
Метки
1С-Битрикс (84)
AIOgram (46)
Android (94)
API (93)
C# (214)
CMS (33)
CSS (1143)
Discord (35)
Django (48)
Docker (32)
Google (482)
Google Chrome (126)
HTML (1394)
IT-образование (54)
Java (59)
JavaScript (1659)
JSON (42)
Laravel (44)
Linux (154)
MySQL (151)
Nginx (57)
Node.js (256)
PHP (1184)
PostgreSQL (80)
Python (543)
React (127)
SQL (396)
Telegram (101)
Ubuntu (44)
Unity (46)
Visual Studio Code (49)
Vue.js (52)
Windows (136)
Windows Server (38)
WordPress (52)
Битрикс24 (42)
Боты (39)
Веб-разработка (966)
Вёрстка (95)
Компьютерные сети (61)
Парсинг (33)
Поисковая оптимизация (149)
Системное администрирование (55)
Фронтенд (38)
Яндекс (53)
Для правильной настройки Webpack для использования React Router DOM, вам необходимо учесть несколько ключевых моментов. Во-первых, у вас должен быть установлен React Router DOM в вашем проекте. Вы можете установить его с помощью npm или yarn:
Затем вам нужно настроить Webpack для правильной обработки маршрутов. Для этого вам нужно настроить правила для загрузчика babel-loader, чтобы он транспилировал JSX код. Вы также должны настроить правила для загрузчика файлов, чтобы обрабатывать изображения и другие статические ресурсы.
Пример конфигурации Webpack для React Router DOM может выглядеть следующим образом:
Обратите внимание на параметр historyApiFallback в блоке devServer. Он необходим для корректной работы React Router DOM, чтобы обрабатывать маршруты на стороне клиента.
Теперь вам нужно настроить ваш компонент App, чтобы использовать BrowserRouter вместо обычного Router:
Теперь ваш проект должен правильно работать с React Router DOM, используя настроенный Webpack. Не забудьте перезапустить dev-сервер после внесения изменений в конфигурацию Webpack.