Передайте данные из шаблона Django для реагирования приложения - PullRequest
1 голос
/ 22 февраля 2020

Я создаю приложение, используя Django - DRF - Реагирует через вызов компонента шаблона. Вопрос: как правильно передать данные из django view-template для реагирования на компонент приложения, например, если API, вызванный в методе извлечения приложения, использовал параметр Dynami c:

fetch("/api/endpoint ") до fetch("/api/endpoint/modelPrimaryKey")

Использованные источники:

views.py

def index(request):
    return render(request, 'frontend/index.html')

index. html

...
</body>
{% load static %}
<script src="{% static "frontend/main.js" %}"></script>
</html>

main. js (составлено веб-пакетом из этого источника)

class App extends Component {
  constructor(props) {
    super(props);
    this.state = {
      data: [],
      loaded: false,
      placeholder: "Loading"
    };
  }

  componentDidMount() {
    fetch("/api/endpoint")
      .then(response => {
        if (response.status > 400) {
          return this.setState(() => {
            return { placeholder: "Something went wrong!" };
          });
        }
        return response.json();
      })
      .then(data => {
        this.setState(() => {
          return {
            data,
            loaded: true
          };
        });
      });
  }

  render() {
    return (
      ... some jsx
    );
  }
}

export default App;
const container = document.getElementById("app");
render(<App />, container);
...