• <noscript id="ggggg"><dd id="ggggg"></dd></noscript>
    <small id="ggggg"></small> <sup id="ggggg"></sup>
    <noscript id="ggggg"><dd id="ggggg"></dd></noscript>
    <tfoot id="ggggg"></tfoot>
  • <nav id="ggggg"><cite id="ggggg"></cite></nav>
    <nav id="ggggg"></nav>
    成人黃色A片免费看三更小说,精品人妻av区波多野结衣,亚洲第一极品精品无码,欧美综合区自拍亚洲综合,久久99青青精品免费观看,中文字幕在线中字日韩 ,亚洲国产精品18久久久久久,黄色在线免费观看

    mongoose中save無法獲取回調函數值的解決方法

    2018-7-18    seo達人

    如果您想訂閱本博客內容,每天自動發到您的郵箱中, 請點這里

    mongoose保存數據:

    const save = new Model(data).save()
        
    • 1

    如果成功,則可以獲取到保存在數據庫的值,但是如果保存數據失敗,則會拋出異常,好在save可以傳入一個回調函數,用法如下:

    const save = new Model(data).save((err, result)=>{ if(err){ // 保存失敗執行的操作
        }else { // 保存成功執行的操作
        }
    
    })
        
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    我們希望根據結果獲取到不同的值,但是此時save返回的是undefined,因為save中的回調函數是一個異步操作

    解決方法:

    使用try catch:

    try{
        const save = await new Model(data).save();
        // 保存成功執行的操作 return ... }catch(err){
        // 保存失敗執行的操作 return ... }
        
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    注意:在async函數中才可以這么使用,因為await只能用在async函數中

    示例:(注冊功能)

    user.model.js

    const mongoose  = require("mongoose"); const port      = process.env.PORT || "8899"; const UserSchema = mongoose.Schema({
        userName: {
            type: String,
            unique: true },
        passWord: String,
        createTime: {
            type: Date, default: Date.now()
        },
        updateTime: {
            type: Date, default: Date.now()
        }
    }, {
        timestamps: {
            createAt: "createTime",
            updateTime: "updateTime" }
    });
    
    module.exports = mongoose.model("USER", UserSchema);
        
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25

    service.js

    const User = require("./user.model);
    class User{
        async login(user){
                try{
                    const result = await new User(user).save();
                    // 其他操作,如發送注冊郵件
                    return { success: true }
                }catch(err){
                    return { success: false, message: "用戶名或密碼錯誤" }
                }
       }
    }
    moduel.exports = new User();
        
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    controller.js

    const server = require("./server); async login(){ // 首先獲取請求中攜帶的用戶信息 const result = await server.login(user);
        if(result.success){ // 注冊成功執行的操作 }else { // 注冊失敗執行的操作 }
    }
    藍藍設計m.lzhte.cn )是一家專注而深入的界面設計公司,為期望卓越的國內外企業提供卓越的UI界面設計、BS界面設計 、 cs界面設計 、 ipad界面設計 、 包裝設計 、 圖標定制 、 用戶體驗 、交互設計、 網站建設 平面設計服務

    日歷

    鏈接

    個人資料

    藍藍設計的小編 http://m.lzhte.cn

    存檔

    主站蜘蛛池模板: 丁香婷婷七月九月缴情| 97日日碰日日摸日日澡| 国产公开久久人人97超碰| 久久激情综合狠狠爱五月| 人妻系列中文字幕久久| 亚洲中文精品一区二区| 欧美成人精品高清视频在线| 精品亚洲欧美无人区乱码| 无码中字出轨中文人妻中文中| 亚洲AV无码久久精品国产老人| 亚洲人成网站观看在线播放| 久久夜色精品国产噜噜av| 亚洲伊人久久成人综合网| 对白刺激的老熟女露脸| 少妇人妻丰满做爰xxx| 精品一区二区三区在线观看l| 白丝乳交内射一二三区| 有码一区二区三区四区| 精品久久久无码中文字幕边打电话 | 产国语一级特黄aa大片| 99久久这里只有免费精品| 国产人免费人成免费视频| 国产欧美在线观看不卡| 黄频免费观看在线播放| 国产在线精品网址你懂的| 蕉岭县| 91精品国产情侣高潮露脸| 97视频精品全国免费观看| 相泽南中文在线精品视频| 久久不见久久见免费影院www日本 四虎国产精品永久在线动漫 | 国精产品一区二区三区福利姬| 亚欧免费无码AⅤ在线观看| 裸体一区二区三区av| 欧洲美熟女乱又伦AV影片| 日韩亚洲人成网站在线播放| 国产欧美日韩亚洲精品区2345| 精品国产亚洲av网站| 台南县| 久久精品人妻中文系列| 无国产精品视频免费| 青青青青国产免费线在线观看|