Не могу выполнить какие-либо операции над объектом в JavaScript - PullRequest
0 голосов
/ 22 марта 2019

У меня есть две функции, как указано ниже. getRawData () и getBTRawData ()

  1. getBTRawData () просто получает данные с Bluetooth с телефона
  2. getRawData () получает возвращаемое значение из getBTRawData () и пытается выполнить итерацию, но это, похоже, не работает. Я могу напечатать значение внутри обещания, но не могу выполнять над ним никаких функций.

getRawData() {

        const result = this.getBTRawData().then((item) => {
            console.log("Item in this one: ", item);
            let flatten = [];
            for(let i in item) {
                console.log("something here");
                flatten.push(...item[i]);
            }

            console.log(flatten);

        }).catch(err => {
            console.log(err);
        });

    }

    async getBTRawData() {
        let result = [];
        const res = await this.bluetoothSerial.subscribeRawData().subscribe((data) => {
            //console.log("raw data");
            // console.log(data);
            var buffer = new Uint8Array(data);
            //this.raw_data_c.push(buffer);
            result.push(buffer);
            //console.log(this.raw_data_c);).map(
            // console.log(result);
        });

        return result;
    }

Любая помощь очень ценится. Спасибо.

1 Ответ

0 голосов
/ 22 марта 2019

getBTRawData, кажется, возвращает массив, а не Promise. Вы должны иметь возможность напрямую работать с данными из getBTRawData внутри getRawData (при условии, что все остальное работает).

...