验证数据,然后返回解决?

use*_*432 2 javascript node.js

如果所有字段都有效,如何返回resolve()否则返回拒绝?

let validateData = (data) => {
    let fields = [
        'Field1',
        'Field2',
        'Field3'
    ];

    return new Promise((resolve, reject) => {
        fields.forEach(field => {
            if (data.hasOwnProperty(field)) {
                // resolve if all matched
            } else {
                //reject?
            }
        });
    });
}
Run Code Online (Sandbox Code Playgroud)

在主要它将有

try {
    await validateData(data);
} catch(err) {
    throw new Error(`${err}`);
}  
Run Code Online (Sandbox Code Playgroud)

Ris*_*are 6

如果数据对象上的任何字段在发现后立即拒绝.如果没有,你最终可以解决.

let validateData = (data) => {
    let fields = [
        'Field1',
        'Field2',
        'Field3'
    ];

    return new Promise((resolve, reject) => {
        fields.forEach(field => {
            if (!data.hasOwnProperty(field)) {
                reject();
            }
        });
        resolve();
    });
}
Run Code Online (Sandbox Code Playgroud)