簡體   English   中英

在Falcor中如何使用數據庫?

[英]In Falcor how to work with database?

我是falcor數據獲取框架的新手。 當我請求類似的東西時,我嘗試了幾個例子

model.get(["contacts", {0..2}, "name"])
     .then(response => {
        this.state.list = response.json.contacts;
        this.setState(this.state);
      });

在服務器端

let data = {
    contacts: [
        {name: "ABC"},
        {name: "XYZ"},
        {name: "PQR"}
    ]
};

let contactsRouter = Router.createClass([
    {
        route: 'contacts[{integers:contactIndexes}]',
        get: (pathSet) => {
            let results = [];
            pathSet.contactIndexes.forEach(contactIndex => {
                if (data.contacts.length > contactIndex) {
                    results.push({
                        path: ["contacts", contactIndex, "name"],
                        value: data.contacts[contactIndex].name
                    });
                }
            });
            return results;
        }
    },
    {
        route: 'contacts.add',
        call: (callPath, args) => {
            var newContact = args[0];

            data.contacts.push({name: newContact})
            return [
                {
                    path: ['contacts', data.contacts.length-1, 'name'],
                    value: newContact
                },
                {
                    path: ['contacts', 'length'],
                    value: data.contacts.length
                }
            ]
        }
    }
]);

我正在獲取數據並且能夠執行其他操作。 我的問題是我想用MongoDB做相同的CRUD操作

data.contacts

我如何構建JSON Graph對象數據應該來自數據庫模式。 希望我的問題得到澄清。

最簡單的方法是在路由的get函數中簡單地進行數據庫查詢:

{
    route: 'contacts[{integers:contactIndexes}]',
    get: (pathSet) => {
        const data = db.get('myModel', (err, res) => {
            return res
        })
        let results = [];
        pathSet.contactIndexes.forEach(contactIndex => {  
            if (data.contacts.length > contactIndex) {
                results.push({
                    path: ["contacts", contactIndex, "name"],
                    value: data.contacts[contactIndex].name
                });
            }
        });
        return results;
    }
}

使用Falcor和CouchDB制作了一個簡單的回購 它應該足以理解它應該如何在MongoDB中完成。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM