apicloud多个页面传递数据的方法


很多时候要在多个页面之间传递数据,查看apicloud官方文档得知

http://docs.apicloud.com/Dev-Guide/data-storage-dev-guide

,本地数据存储方式有以下几种:


html5的Local Storage

偏好数据

文件

sqlite

数据库


那么我在多个页面中传递数据,采用的就是html5的Local Storage



直接上代码


页面1:

html代码

<button onclick="save()">保存</button>
<button onclick="open2()">打开另一个页面</button>

js代码

function save(){
		
		$api.setStorage("key1", "字符串");
		$api.setStorage("key2", 123);
		var userInfo={
			"name":"哈哈",
			"gender":1
		};
		$api.setStorage("key3", userInfo);
	}
	
function open2(){
		api.openWin(
			{
			    name: 'page1',
			    url: 'LocalStorage2.html'
			}
		);
	}



页面2

html代码

<button onclick="read()">读取</button>
<button onclick="rm()">删除key1</button>
<button onclick="rmAll()">清空所有</button>

js代码

function read(){
		var value1 = $api.getStorage("key1");
		alert(value1);
		var value2 = $api.getStorage("key2");
		alert(value2);
		var value3 = $api.getStorage("key3");
		alert(JSON.stringify(value3));
	}
function rm(){
		$api.rmStorage("key1");//用完后要及时删除,不然可能会干扰数据
		alert('删除key1');
	}
function rmAll(){
		$api.clearStorage();//慎用
		alert('清空');
	}





原文出处:/show_1C71FrJxd2U4.html