BUI

其它版本:

API for BUI 1.5.1

Show:

bui.storage Class

本地数据存储,支持字符串跟对象存储,注意:取的时候是返回一个数组

预览地址: 存字符demo | 存对象demo

Constructor

bui.storage

(
  • [size]
  • [object.size]
  • [object.reverse]
  • [object.local]
)

Parameters:

  • [size] Number | Object | Number optional

    [可以是对象,也可以是数字,数字代表存储的数据大小,默认是1]

  • [object.size] Number optional

    [ 存储多少条数据,默认为1 | 0 为不限制 ]

  • [object.reverse] Boolean optional

    [ 1.4新增 默认true(最新的数据在后面),false(最新的数据在前面,常用于最近历史记录) ]

  • [object.local] Boolean optional

    [ 默认true 永久存储 | false 临时存储,切换页面则消失 ]

Example:

   存储使用示例:

   // 存储1条数据
   var storage = bui.storage();
       storage.set("username","hello");
       storage.set("username","bui");
       // 第2个会覆盖第1个

  // 获取所有数据
  var data = storage.get("username");

  // 默认只存储一条数据
  //console.log( data ) "bui"

多条数据存储示例:

   // 保存数据
   var storage = bui.storage(2);
   //存储第1条数据
   storage.set("userinfo",{"id":"n1","name":"hello"},"id");
   //存储第2条数据
   storage.set("userinfo",{"id":"n2","name":"bui"},"id");
   //删除1条数据,通过name值比对
   storage.remove("userinfo","hello","name");
   // 获取数据,返回一个数组
   var data = storage.get("userinfo");

    //console.log( data ) [{"id":"n2","name":"bui"}]

Item Index

Methods

Methods

clear

() chainable

清空本地存储

Example:

       var storage = bui.storage();
           storage.clear();

get

(
  • key
  • [value]
  • keyname
)
Array

获取存储的数组,或者某条数据

Parameters:

  • key String

    [存储的变量名]

  • [value] String | Number optional

    [获取某一条数据,为数字时是在第几条数据,0为第一条数据]

  • keyname String

    [在某个字段里面]

Returns:

Array:

返回数组或者某条数据或者undefined

Example:

       var storage = bui.storage();

       // 获取数组
       var data = storage.get("username");
       //console.log( data ) // ["区柏荣"]

       // 获取数组里的第1条数据,才是自己存进去的内容
       var data = storage.get("username",0);
       //console.log( data ) // 区柏荣

       // 获取数组里的某条数据在某个字段 本地存储的内容为: [{id:"wangws","name":"王伟深"},{id:"oubr","name":"区柏荣"}]
       var data = storage.get("username","oubr","id");
       //console.log( data ) // {id:"oubr","name":"区柏荣"}

remove

(
  • key
  • [value]
  • [keyname]
)
chainable

删除字段的某条信息

Parameters:

  • key String

    [存储的变量名]

  • [value] String | Number optional

    [ 要删的内容 | 索引(在第几个) ]

  • [keyname] String | Number optional

    [ 字段名 | 长度(1.4新增,配合value是数字时使用) ]

Example:

       var storage = bui.storage();

           // 删除第几条数据
           storage.remove("username",0);

           // 删除第1条包含之后的2条数据
           storage.remove("username",1,2);
           // 删除某条数据
           storage.remove("username","王伟深");

           // 删除某条数据,通过id比对, 如果存储的对象是JSON
           storage.remove("userinfo","n1","id");

set

(
  • key
  • value
  • [keyname]
)
chainable

以数组保存数据,如果数据是一个对象,需要传keyname,防止数据重复增加.

Parameters:

  • key String

    [存储的变量名]

  • value Object

    [存储的数据,可以是string,也可以是一个对象]

  • [keyname] String optional

    [存储的数据的比对唯一键值,不传会导致数据重复,size为1 则都会替换]

Example:

       var storage = bui.storage();
           //普通数组无需传字段,不传最后的值默认只存储1条数据
           storage.set("username","王伟深");
           //存储对象示例
           storage.set("userinfo",{"id":"n1","name":"王伟深"},"id");