Bagaimana untuk mengembalikan data mongodb daripada panggilan
迷茫
迷茫 2017-06-26 10:49:30
0
2
1224
const connect = async () => {
    // 连接 mongodb 数据库
    const db = await monguaDb()
    const collection = db.collection('user')
    let b = await collection.find({}).toArray()
    cc = b
    console.log("111---" , cc)
    return b
}


const  a = connect()
console.log("2222--------", cc)

Seperti tajuk, saya ingin merangkumkan mongo ke dalam Model.... Tetapi saya mendapati masalah untuk mencetak di dalam, tetapi apabila memanggil di luar, data akan hilang. . . . 222-------Apa yang dicetak adalah kosong

Oh, jika anda meletakkannya dalam pakej projek, Promise yang dicetak { <pending> }

Bagaimana untuk mengembalikan tatasusunan, atau adakah saya perlu menggunakan rangka kerja seperti mongose?

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

membalas semua(2)
刘奇

Saya menggunakan mongoose, yang agak mudah digunakan Berikut adalah beberapa demo yang saya tulis https://github.com/treeandgra...

https://github.com/treeandgra...

漂亮男人

Pertama sekali, saya ingin menyatakan bahawa masalah ini tiada kaitan dengan rangka kerja atau perpustakaan, ia adalah masalah janji sepenuhnya.
1 Bukan kerana data hilang, tetapi pembolehubah cc anda ditakrifkan secara membuta tuli dan tidak diperlukan sama sekali.
2. Dapat dilihat bahawa penulis tidak cukup mengetahui tentang janji yang menanti adalah objek janji Anda boleh mendapatkan data dengan memanggilnya.

const connect = async () => {
    const db = await monguaDb()
    const collection = db.collection('user')
    let b = await collection.find({}).toArray()
    console.log("111---" , b);
    return b; //返回的b是promise对象
}

connect().then((doc) => { //取出b完成后resolve的数据
    console.log(222---" , doc);
});
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan