Я использовал реагировать-создать-приложение , чтобы настроить базовое приложение реакции, и я работаю с Flask, настроив рабочий режим и режим разработки (соответственно меняя статические / шаблонные папки по умолчанию):
from datetime import datetime
from flask import Flask, render_template, url_for, request, redirect, abort, Response, send_file, send_from_directory, make_response
import argparse
import json
import logging
import pathlib
import sys
import os
import subprocess
import re
current_dir = os.path.dirname(os.path.realpath(__file__))
# Caminho para o diretório relativo ManagerFileIdentification
manager_dir = os.path.abspath(os.path.join(current_dir, "../"))
sys.path.append(manager_dir)
from InputDataController.libs.db_connection.dynamo.customer import Customer, StoneCustomer, CustomerManager
from InputDataController.libs.db_connection.dynamo.merchant import Merchant, StoneMerchant, MerchantManager
from InputDataController.libs.db_connection.dynamo.repository import Repository, RepositoryManager
from werkzeug.exceptions import BadRequest
DEVELOPMENT = {}
PRODUCTION = {
"host": "0.0.0.0",
"port": "80"
}
running_mode = PRODUCTION
if __name__ == '__main__':
cmd_args = argparse.ArgumentParser(
description="Gerenciador de adquirentes especiais da Concil.")
cmd_args.add_argument(
"--prod", help="Executa em modo de produção.", action="store_true")
parsed_args = cmd_args.parse_args()
appdata = ""
if parsed_args.prod:
appdata = "/home/ec2-user"
app = Flask(__name__, template_folder = os.path.join(current_dir, "build").replace("\\", '/'))
app.static_folder = os.path.join(current_dir, "build/static").replace("\\", '/')
else:
appdata = os.getenv("APPDATA")
app = Flask(__name__, template_folder = os.path.join(current_dir, "public").replace("\\", '/'))
app.static_folder = os.path.join(current_dir, "src").replace("\\", '/')
@app.route('/acquirer-manager')
def index():
return render_template("index.html")
app.config["TEMPLATES_AUTO_RELOAD"] = True
app.config["appdata"] = appdata
app.config["parsed_args"] = parsed_args
if running_mode:
app.run(running_mode["host"], running_mode["port"])
else:
app.run()
Проблема в том, что я вижу только скомпилированный вывод реакции, если я запускаю npm run build
(и, следовательно, запускаю флешку в режиме --prod, используя содержимое папки сборки для статических / шаблонов),И это проблема, потому что это неизмеримо скучно - компилировать всего приложения, чтобы увидеть какие-либо изменения на передней панели.И ... Я не хочу использовать NodeJS / serve с NodeJS .Если в режиме разработки я получаю доступ с помощью flkk к папкам src и public, я получаю всевозможные жуткие ошибки, потому что файлы явно «сырые».Итак, как я могу запустить колбу с реакцией без необходимости компилировать каждый раз ?
РЕДАКТИРОВАТЬ: Это смешно (Я не хочу явно использовать Babelтеги в моем скрипте. Является ли реакция ТО зависит от NodeJS?)