Как другие функции могут иметь доступ к значениям Promise для обработки? - PullRequest
0 голосов
/ 27 апреля 2020

Я полностью застрял. Я понятия не имею, как выполнять вычисления значений, возвращаемых из поиска в базе данных. Значения рассчитываются и добавляются в регистр, доступ к которому осуществляется другими функциями . Поэтому я хочу сохранить и обработать возвращаемые значения Promise с помощью нескольких функций.

Я использую серию обещаний передавать операции чтения из базы данных, преобразования данных, пока, наконец, не доберусь до места, где мне нужно обрабатывать и хранить данные для других процессов.

CalculatorEngine . js

import { Component } from 'react';


const NoteService = require('../../services/note-service');

let currentValue = '';
let currentMeasure = '';

class CalculatorEngine extends Component {

constructor(props){
    super(props);

    currentMeasure = '';
    currentValue = '';

        this.state = {
        notes: [],
        noteDry: [],
        noteWet: [],
        notePastry: []

    };

    this.inputIngredients = this.inputIngredients.bind(this);

}

componentDidMount() {
    //this.inputIngredients();
}

inputIngredients (ingredient, dataBase)  {

console.log('Testing the Input: iteration('+i+') Ingredient: ('+ingredient+')');
            NoteService
                .getMeasure(ingredient, dataBase)
                //.then(notes => {return notes.sugars;})
                .then(notes=> console.log(notes.sugars))   //returned dataBase value (278)
                .catch();

            currentValue += this.state.notes.conversion[currentMeasure];

}
}

export default CalculatorEngine;

Я хочу сохранить эти значения (например, 278) для их обработки. Я также хочу дать этим значениям доступ к другим функциям. Как мне сделать это эффективно?

Из того, что я знаю возвращать заметки; не будет работать для сохранения и обработки данных, потому что начальный процесс, .then (), все еще ожидает и имеет нет значения.

Await / Asyn c должен позволять, таким образом, ожидать назначения значений, но я не могу заставить его работать из-за множества красных ошибок.

Я даже пытался Сохранение в this.state, но мой конкретный jsx-файл все еще является частью модели и не имеет render (). Ранее я получил сообщение о том, что this.state было недоступно из-за не подключенного состояния. Таким образом, опция this.state выглядит как отступление.

В заключение: я хотел бы, чтобы серия возвращаемых значений внесла свой вклад в различные вычисления. Примером может служить отображение имени ингредиента возвращаемого значения для расчета содержания сахара в рецепте и т. Д. c. и отображать некоторые значения мгновенно, в то время как другие значения будут отображаться после того, как пользователь введет все ингредиенты.

Error messages and console.log() messages

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