react-native-db-models, 响应本地库创建本地数据库模型

分享于 

5分钟阅读

GitHub

  繁體 雙語
React native Library for creating Local DB models
  • 源代码名称:react-native-db-models
  • 源代码网址:http://www.github.com/darkrishabh/react-native-db-models
  • react-native-db-models源代码文档
  • react-native-db-models源代码下载
  • Git URL:
    git://www.github.com/darkrishabh/react-native-db-models.git
    Git Clone代码到本地:
    git clone http://www.github.com/darkrishabh/react-native-db-models
    Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/darkrishabh/react-native-db-models
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
    
    React Native DB Models 响应原生数据库模型

    Licensenpm version

    这个包装器构建在的本地存储,并为异步数据库事务提供了更好和改进的数据库层。

    React本机数据库模型修复了本地存储中的许多问题,并且顶层的DB类有助于提供更多功能。

    NPM

    添加新特性添加到模型的所有写操作中添加源。 它帮助你维护应用程序的全局存储和呈现能力。

    检查新文档

    用法

    使用这个库的理想方法是在你的应用程序中使用一个 db.js。 那是必需的。

    DB.js

    
    var RNDBModel = require('react-native-db-models')
    
    
    
    var DB = {
    
    
    "app": new RNDBModel.create_db('app'),
    
    
    "users": new RNDBModel.create_db('users'),
    
    
    }
    
    
    
    module.exports = DB
    
    
    
    

    并要求在你的代码中

    
    var React = require('react-native');
    
    
    var DB = require('./db.js');
    
    
    //DB Emitter Initialized
    
    
    
    var DBEvents = require('react-native-db-models').DBEvents
    
    
    var {
    
    
     AppRegistry,
    
    
     StyleSheet,
    
    
     Text,
    
    
     View,
    
    
     Image
    
    
     } = React;
    
    
    
    //Only"all" event emitter is available
    
    
    
    DBEvents.on("all", function(){
    
    
     console.log("Database changed");
    
    
    })
    
    
    
    var App = React.createClass({
    
    
     get_users: function(){
    
    
     DB.users.get_all(function(result){
    
    
     console.log(result);
    
    
     })
    
    
     },
    
    
     render: function(){
    
    
     return (
    
    
     <View>
    
    
     <Text onPress={this.get_users}> Hello </Text>
    
    
     </View>
    
    
     );
    
    
     }
    
    
    });
    
    
    
    
    所有方法都是异步的,因此需要回调方法。

    你可以从回调中检查所有返回的数据。 返回的数据比预期的多,因此根据需要修改它。

    获取( query_data,回调) query_data: 要匹配的数据。 ( 如 {name:"无名氏"} )

    例子

    
    DB.users.get({first_name:"Rishabh"}, function(results){
    
    
     console.log(results);
    
    
    })
    
    
    
    

    get_id

    get_id ( id,回调) id: 要获取的对象的ID。

    例子

    
    DB.users.get_id(10, function(results){
    
    
     console.log(results);
    
    
    })
    
    
    
    

    get_all

    get_all(callback) 为你获取完整的表格。

    例子

    
    DB.users.get_all(function(result){
    
    
     console.log(result);
    
    
     })
    
    
    
    

    删除 query_data的费用: 要匹配的数据。 ( 如 {name:"无名氏"} )

    例子

    
    DB.users.remove({first_name:"Rishabh"}, function(removed_data){
    
    
     console.log(removed_data);
    
    
    })
    
    
    
    

    remove_id

    remove_id ( id,回调) id: 要删除的对象的ID。

    例子

    
    DB.users.remove({first_name:"Rishabh"}, function(removed_data){
    
    
     console.log(removed_data);
    
    
    })
    
    
    
    

    添加

    添加( 数据,回调) 数据: 要添加的数据。 ( 例如 {name:"无名氏",年龄:56 })

    例子

    
    DB.users.add({first_name:"Rishabh", age: 25}, function(added_data){
    
    
     console.log(added_data); 
    
    
    })
    
    
    
    

    更新

    更新( query_data,new_data,回调) query_data: 要匹配的数据。 ( 例如 {name:"无名氏"} ) new_data: 要更新的数据。 ( 如 {age: 12 })

    例子

    
    DB.users.update({first_name:"Rishabh"}, {age: 25}, function(updated_table){
    
    
     console.log(updated_table);
    
    
    })
    
    
    
    

    update_id

    update_id ( id,new_data,回拨) id: 要匹配的数据的id。 new_data: 要更新的数据。 ( 如 {name:"肯"} )

    例子

    
    DB.users.update_id(3, {name:"Ken", age: 12}, function(updated_table){
    
    
     console.log(updated_table);
    
    
    })
    
    
    
    

    erase_db

    erase_db(callback) 会清除整个表。

    例子

    
    DB.users.erase_db(function(removed_data){
    
    
     console.log(removed_data);
    
    
    })
    
    
    
    

    不久将增加更多的方法和功能。 如更新。替换。约束等。


    模式  react  LOC  NAT  Native  Local  
    相关文章