Django + Реагирует на тот же развивающийся сервер / порт - PullRequest
0 голосов
/ 04 мая 2019

Я пытаюсь запустить свой React на том же сервере и порте, где работает Django (управляемый сервер django). Кажется, ULR установлены правильно, потому что я могу загрузить /public/index.html страницу React, но она не может загрузить мое приложение, только статический HTML. Это происходит, когда я запускаю сервер django:

python manage.py runserver

Когда я запускаю приложение React из: npm start (Node), он работает нормально, и я могу запустить сервер Django (другой порт, тот же локальный хост); они так работают вместе, но это не то, чего я хочу.

Изучая код, я вижу, что если я запускаю приложение React с Node-сервером, строка сценария автоматически добавляется (см. Последний тег):

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1" />
    <meta name="theme-color" content="#000000" />
    <!--
      manifest.json provides metadata used when your web app is installed on a
      user's mobile device or desktop. See https://developers.google.com/web/fundamentals/web-app-manifest/
    -->
    <link rel="manifest" href="/manifest.json" />
    <!--
      Notice the use of  in the tags above.
      It will be replaced with the URL of the `public` folder during the build.
      Only files inside the `public` folder can be referenced from the HTML.

      Unlike "/favicon.ico" or "favicon.ico", "/favicon.ico" will
      work correctly both with client-side routing and a non-root public URL.
      Learn how to configure a non-root public URL by running `npm run build`.
    -->
    <script src="../src/index.js"></script>
    <title>Aplicación </title>
  </head>
  <body>
    <noscript>You need to enable JavaScript to run this app.</noscript>
    <div id="root"></div>
    <!--
      This HTML file is a template.
      If you open it directly in the browser, you will see an empty page.

      You can add webfonts, meta tags, or analytics to this file.
      The build step will place the bundled scripts into the <body> tag.

      To begin the development, run `npm start` or `yarn start`.
      To create a production bundle, use `npm run build` or `yarn build`.
    -->
  <script src="/static/js/bundle.js"></script><script src="/static/js/1.chunk.js"></script><script src="/static/js/main.chunk.js"></script></body>
</html>

Эта строка не появляется, когда приложение React вызывается из URL-адресов Django, установленных в ulrs.py

Я пробовал с: - Скопируйте и вставьте в файл index.html строку «script», чтобы загрузить то же, что делает сервер Node, но результат был таким же. - Загрузка приложения React вручную из другого тега «script», но безуспешно.

В Интернете есть несколько учебных пособий с теми же шагами, что и я.

Что я могу сделать, чтобы загрузить приложение React так же, как сервер Node, в проекте Django?

Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...