Облачная функция Firebase - ошибка разбора: неожиданный токен dbRef - PullRequest
0 голосов
/ 26 апреля 2019

Я пытаюсь сделать 2 запроса к базе данных Firebase RealTime. Сначала я получаю идентификатор, а затем со вторым запросом получаю сообщение с таким идентификатором.

Я попытался заменить первый Promise на await, но он не сработал. Мне удалось заставить код работать с Обещанием в другом Обещании, но я не понимаю, почему он не работает так, и я часто сталкивался с этой досадной ошибкой, так что пришло время понять, почему это происходит и как исправить это (не избежать!)

exports.getFirstPosts = functions.https.onRequest((req, res) => {
    let dbRef = admin.database().ref();

    return dbRef.child('/regions/').child(req.query.region)
        .limitToFirst(1)
        .once('value')
        .then((snapshot) => {
            let data = snapshot.val();
            let message = "empty"

            if(data === null || data === undefined) { 
                message = "No-posts-in-region"
            }else{
                message = "success"
            }
            console.log(data);

            let postsIdsArray = [];
            for(let id in data){
                postsIdsArray.push(id);
                console.log('x',id);
            }

            let postData = await dbRef.child('/posts').child(postsIdsArray[0]).once('value')
                    return res.status(200).json({
                        version: "check if data is null 2post update",
                        message: message,
                        data: data,
                        arr: postsIdsArray,
                        post: snapshot.val(),
                    });
               
            
        });
});

Это ошибка, которую я получаю:

C:\Users\marius\Desktop\CloudF\functions\index.js
  77:34  error  Parsing error: Unexpected token dbRef

✖ 1 problem (1 error, 0 warnings)

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! functions@ lint: `eslint .`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the functions@ lint script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\marius\AppData\Roaming\npm-cache\_logs\2019-04-26T16_25_42_235Z-debug.log
events.js:183
      throw er; // Unhandled 'error' event
      ^

Error: spawn npm --prefix "%RESOURCE_DIR%" run lint ENOENT
    at notFoundError (C:\Users\marius\AppData\Roaming\nvm\v8.12.0\node_modules\firebase-tools\node_modules\cross-env\node_modules\cross-spawn\lib\enoent.js:6:26)
    at verifyENOENT (C:\Users\marius\AppData\Roaming\nvm\v8.12.0\node_modules\firebase-tools\node_modules\cross-env\node_modules\cross-spawn\lib\enoent.js:40:16)
    at ChildProcess.cp.emit (C:\Users\marius\AppData\Roaming\nvm\v8.12.0\node_modules\firebase-tools\node_modules\cross-env\node_modules\cross-spawn\lib\enoent.js:27:25)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)

Error: functions predeploy error: Command terminated with non-zero exit code1

Having trouble? Try firebase deploy --help
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...