首页 > 解决方案 > 如何将我的数据模型与视图对象连接起来?

问题描述

我为我的视图制作了类模型,代码如下(我正在使用 nw.js ):

var sqlite3 = require("sqlite3").verbose();
var db = new sqlite3.Database('./../data.sqlite');
class store_model{
        constructor() {
                this.state = {
                        _stmt: null
                }
        }
        readAll() {
                db.each("SELECT * FROM store ", (res, err) => {
                        if (err)
                                console.log(err);
                        else
                                console.log(res);
                });
        }
        read(obj) {

                db.get("SELECT * FROM store WHERE ID =" + obj.id, (res, err) => {
                        if (err)
                                console.log(err);
                        else if (res !== null)
                                console.log(res);
                        else
                                console.log()
                });
        }
        create(obj) {
                try {
                        db.serialize(() => {
                                this.state._stmt = db.prepare("INSERT INTO store (name,mail) VALUES (?,?)");
                                this.state._stmt.run(obj.name , obj.mail);
                                this.state._stmt.finalize();
                        })
                }
                catch (err) {
                        console.log("There is an error " + err);
                }
        }
        update(obj) {
                db.serialize(() => {
                        this.state._stmt = db.prepare("UPDATE store SET name = COALESCE(?, name) , mail=COALESCE(?,mail) WHERE ID=? ");
                        console.log(obj.name)
                        try {
                        this.state._stmt.run(obj.name, obj.mail, obj.id);
                        }
                        catch (err){
                                console.log(err);
                        }
                        this.state._stmt.finalize();
                        console.log("updated ....");
                })
        }

        delete(obj) {
                this.state._stmt = db.prepare("DELETE FROM store WHERE ID=?");
                this.state._stmt.run(obj.id);
                console.log("supprimer");
        }
}

Made it之后我想将我的一些请求的响应传递给我在vue.js中的视图我遇到的问题是我的请求是异步函数所以我不能直接将我的响应传递给我的视图对象因为范围.我希望有人指导我(一种传递我的请求响应的方法)能够将我的响应传输到我的视图对象(我的视图对象具有接收数据的属性)。

标签: javascriptnode.jssqlitevue.js

解决方案


推荐阅读