Skip to content

共享数据模块

数据结构

ESSharedData

共享数据信息

参数描述类型非空
mode共享模式ESSharedDataMode
type数据类型ESSharedDataType
secretKey数据秘钥string
data数据any

ESSharedDataMode

共享模式

参数描述类型非空
ES_SHARED_DATA_MODE_PRIVATE私有模式ESSharedDataMode
ES_SHARED_DATA_MODE_WORLD_READABLE只读ESSharedDataMode
ES_SHARED_DATA_MODE_WORLD_WRITEABLE可写ESSharedDataMode

ESSharedDataType

共享数据类型

参数描述类型非空
ES_SHARED_DATA_TYPE_INTintESSharedDataType
ES_SHARED_DATA_TYPE_LONGlongESSharedDataType
ES_SHARED_DATA_TYPE_FLOATfloatESSharedDataType
ES_SHARED_DATA_TYPE_STRINGstringESSharedDataType
ES_SHARED_DATA_TYPE_BOOLEANbooleanESSharedDataType
ES_SHARED_DATA_TYPE_MAPmapESSharedDataType
ES_SHARED_DATA_TYPE_ARRAYarrayESSharedDataType

ESSharedDataParams

共享数据接口参数

参数描述类型非空
packageName快应用包名string
secretKey秘钥string

接口

getBoolean

该方法获取boolean类型共享数据。

完整方法声明:function getBoolean(params: ESSharedDataParams, key: string, defValue: boolean): Promise<boolean>

  • 参数:
参数描述类型非空
params参数ESSharedDataParams
keykeystring
defValue默认值boolean
  • 返回值:
属性描述类型默认值
boolean类型共享数据Promise<boolean>

putBoolean

该方法存储boolean类型共享数据。

完整方法声明:function putBoolean(params: ESSharedDataParams, key: string, value: boolean, mode: ESSharedDataMode): Promise<boolean>

  • 参数:
参数描述类型非空
params参数ESSharedDataParams
keykeystring
valuevalueboolean
mode共享模式ESSharedDataMode
  • 返回值:
属性描述类型默认值
是否操作成功Promise<boolean>

getInt

该方法获取int类型共享数据。

完整方法声明:function getInt(params: ESSharedDataParams, key: string, defValue: number): Promise<number>

  • 参数:
参数描述类型非空
params参数ESSharedDataParams
keykeystring
defValue默认值number
  • 返回值:
属性描述类型默认值
int类型共享数据Promise<number>

putInt

该方法存储int类型共享数据。

完整方法声明:function putInt(params: ESSharedDataParams, key: string, value: number, mode: ESSharedDataMode): Promise<boolean>

  • 参数:
参数描述类型非空
params参数ESSharedDataParams
keykeystring
valuevaluenumber
mode共享模式ESSharedDataMode
  • 返回值:
属性描述类型默认值
是否操作成功Promise<boolean>

getLong

该方法获取long类型共享数据。

完整方法声明:function getLong(params: ESSharedDataParams, key: string, defValue: number): Promise<number>

  • 参数:
参数描述类型非空
params参数ESSharedDataParams
keykeystring
defValue默认值number
  • 返回值:
属性描述类型默认值
long类型共享数据Promise<number>

putLong

该方法存储long类型共享数据。

完整方法声明:function putLong(params: ESSharedDataParams, key: string, value: number, mode: ESSharedDataMode): Promise<boolean>

  • 参数:
参数描述类型非空
params参数ESSharedDataParams
keykeystring
valuevaluenumber
mode共享模式ESSharedDataMode
  • 返回值:
属性描述类型默认值
是否操作成功Promise<boolean>

getString

该方法获取string类型共享数据。

完整方法声明:function getString(params: ESSharedDataParams, key: string, defValue: string | null | undefined): Promise<string>

  • 参数:
参数描述类型非空
params参数ESSharedDataParams
keykeystring
defValue默认值string | null | undefined
  • 返回值:
属性描述类型默认值
string类型共享数据Promise<string>

putString

该方法存储string类型共享数据。

完整方法声明:function putString(params: ESSharedDataParams, key: string, value: string, mode: ESSharedDataMode): Promise<boolean>

  • 参数:
参数描述类型非空
params参数ESSharedDataParams
keykeystring
valuevaluestring
mode共享模式ESSharedDataMode
  • 返回值:
属性描述类型默认值
是否操作成功Promise<boolean>

getArray

该方法获取Array类型共享数据。

完整方法声明:function getArray(params: ESSharedDataParams, key: string, defValue: Array<any> | null | undefined): Promise<Array<any>>

  • 参数:
参数描述类型非空
params参数ESSharedDataParams
keykeystring
defValue默认值Array<any> | null | undefined
  • 返回值:
属性描述类型默认值
Array类型共享数据Promise<Array<any>>

putArray

该方法存储Array类型共享数据。

完整方法声明:function putArray(params: ESSharedDataParams, key: string, value: Array<any>, mode: ESSharedDataMode): Promise<boolean>

  • 参数:
参数描述类型非空
params参数ESSharedDataParams
keykeystring
valuevalueArray<any>
mode共享模式ESSharedDataMode
  • 返回值:
属性描述类型默认值
是否操作成功Promise<boolean>

getMap

该方法获取Map类型共享数据。

完整方法声明:function getMap(params: ESSharedDataParams, key: string, defValue: Map<any, any> | undefined | null): Promise<Map<any, any>>

  • 参数:
参数描述类型非空
params参数ESSharedDataParams
keykeystring
defValue默认值Map<any, any> | undefined | null
  • 返回值:
属性描述类型默认值
Map类型共享数据Promise<Map<any, any>>

putMap

该方法存储Map类型共享数据。

完整方法声明:function putMap(params: ESSharedDataParams, key: string, value: Map<any, any>, mode: ESSharedDataMode): Promise<boolean>

  • 参数:
参数描述类型非空
params参数ESSharedDataParams
keykeystring
valuevalueMap<any, any>
mode共享模式ESSharedDataMode
  • 返回值:
属性描述类型默认值
是否操作成功Promise<boolean>

基础用法

  • 代码示例:
    点击查看源码
    vue
    <template>
    	<div class='es-sdk-root-css'>
    		<s-title-view class='es-sdk-content-title-css' :text='this.$options.name' />
    		<div class='es-sdk-content-divider-css' />
    		<div class='es-sdk-content-column-css'>
    			<div class='es-sdk-content-row-css'>
    				<s-text-view text='Boolean:'></s-text-view>
    				<s-text-view :text='booleanValue'></s-text-view>
    				<s-text-view text='Int:'></s-text-view>
    				<s-text-view :text='intValue'></s-text-view>
    				<s-text-view text='Long:'></s-text-view>
    				<s-text-view :text='longValue'></s-text-view>
    				<s-text-view text='String:'></s-text-view>
    				<s-text-view :text='stringValue'></s-text-view>
    				<s-text-view text='Array:'></s-text-view>
    				<s-text-view :text='arrayValue'></s-text-view>
    				<s-text-view text='Map:'></s-text-view>
    				<s-text-view :text='mapValue'></s-text-view>
    			</div>
    			<div class='es-sdk-content-divider-css' />
    			<div class='es-sdk-content-row-css'>
    				<s-text-button text='getBoolean' @onButtonClicked='onGetBooleanButtonClicked' />
    				<s-text-button text='getInt' @onButtonClicked='onGetIntButtonClicked' />
    				<s-text-button text='getLong' @onButtonClicked='onGetLongButtonClicked' />
    				<s-text-button text='getString' @onButtonClicked='onGetStringButtonClicked' />
    				<s-text-button text='getArray' @onButtonClicked='onGetArrayButtonClicked' />
    				<s-text-button text='getMap' @onButtonClicked='onGetMapButtonClicked' />
    			</div>
    			<div class='es-sdk-content-row-css'>
    				<s-text-button text='putBoolean' @onButtonClicked='onPutBooleanButtonClicked' />
    				<s-text-button text='putInt' @onButtonClicked='onPutIntButtonClicked' />
    				<s-text-button text='putLong' @onButtonClicked='onPutLongButtonClicked' />
    				<s-text-button text='putString' @onButtonClicked='onPutStringButtonClicked' />
    				<s-text-button text='putArray' @onButtonClicked='onPutArrayButtonClicked' />
    				<s-text-button text='putMap' @onButtonClicked='onPutMapButtonClicked' />
    			</div>
    		</div>
    	</div>
    </template>
    
    <script lang='ts'>
    import {defineComponent} from '@vue/runtime-core';
    import {ref} from 'vue';
    import {ESSharedDataMode, useESShareData, useESToast} from '@extscreen/es3-core';
    
    export default defineComponent({
    	name: '共享数据',
    	setup() {
    		const booleanValue = ref(false);
    		const intValue = ref(0);
    		const longValue = ref(0);
    		const stringValue = ref('');
    		const arrayValue = ref([]);
    		const mapValue = ref({});
    
    		const shareData = useESShareData();
    		const toast = useESToast();
    
    		const shareDataParams = {
    			packageName: 'debug',
    			secretKey: '111111111',
    		};
    
    		function onGetBooleanButtonClicked() {
    			shareData.getBoolean(shareDataParams, 'booleanKey', false)
    				.then(value => {
    						booleanValue.value = value;
    					},
    					error => {
    
    					},
    				);
    		}
    
    		function onGetIntButtonClicked() {
    			shareData.getInt(shareDataParams, 'intKey', 0)
    				.then(value => {
    						intValue.value = value;
    					},
    					error => {
    
    					},
    				);
    		}
    
    		function onGetLongButtonClicked() {
    			shareData.getLong(shareDataParams, 'longKey', 0)
    				.then(value => {
    						longValue.value = value;
    					},
    					error => {
    
    					},
    				);
    		}
    
    		function onGetStringButtonClicked() {
    			shareData.getString(shareDataParams, 'stringKey', '')
    				.then(value => {
    						stringValue.value = value;
    					},
    					error => {
    
    					},
    				);
    		}
    
    		function onGetArrayButtonClicked() {
    			shareData.getArray(shareDataParams, 'arrayKey', [])
    				.then(value => {
    						arrayValue.value = value;
    					},
    					error => {
    
    					},
    				);
    		}
    
    		function onGetMapButtonClicked() {
    			shareData.getMap(shareDataParams, 'mapKey', null)
    				.then(value => {
    						mapValue.value = value;
    					},
    					error => {
    
    					},
    				);
    		}
    
    		//--------------------------------------------------------------------------------------
    		function onPutBooleanButtonClicked() {
    			shareData.putBoolean(shareDataParams, 'booleanKey', true,
    				ESSharedDataMode.ES_SHARED_DATA_MODE_PRIVATE)
    				.then(value => {
    						toast.showToast('putSharedBoolean success');
    					},
    					error => {
    						toast.showToast('putSharedBoolean error');
    					},
    				);
    
    		}
    
    		function onPutIntButtonClicked() {
    			shareData.putInt(shareDataParams, 'intKey', 22,
    				ESSharedDataMode.ES_SHARED_DATA_MODE_PRIVATE)
    				.then(value => {
    						toast.showToast('putSharedInt success');
    					},
    					error => {
    						toast.showToast('putSharedInt error');
    					},
    				);
    		}
    
    		function onPutLongButtonClicked() {
    			shareData.putLong(shareDataParams, 'longKey', 22,
    				ESSharedDataMode.ES_SHARED_DATA_MODE_PRIVATE)
    				.then(value => {
    						toast.showToast('putSharedLong success');
    					},
    					error => {
    						toast.showToast('putSharedLong error');
    					},
    				);
    		}
    
    		function onPutStringButtonClicked() {
    			shareData.putString(shareDataParams, 'stringKey', '22',
    				ESSharedDataMode.ES_SHARED_DATA_MODE_PRIVATE)
    				.then(value => {
    						toast.showToast('putSharedString success');
    					},
    					error => {
    						toast.showToast('putSharedString error');
    					},
    				);
    		}
    
    		function onPutArrayButtonClicked() {
    			shareData.putArray(shareDataParams, 'arrayKey', [22],
    				ESSharedDataMode.ES_SHARED_DATA_MODE_PRIVATE)
    				.then(value => {
    						toast.showToast('putSharedArray success');
    					},
    					error => {
    						toast.showToast('putSharedArray error');
    					},
    				);
    		}
    
    		function onPutMapButtonClicked() {
    
    			const map = new Map<string, string>();
    			map.set('mapKey', 'mapValue');
    
    			shareData.putMap(shareDataParams, 'mapKey', map,
    				ESSharedDataMode.ES_SHARED_DATA_MODE_PRIVATE)
    				.then(value => {
    						toast.showToast('putSharedMap success');
    					},
    					error => {
    						toast.showToast('putSharedMap error');
    					},
    				);
    		}
    
    		return {
    			booleanValue,
    			intValue,
    			longValue,
    			stringValue,
    			arrayValue,
    			mapValue,
    			onGetBooleanButtonClicked,
    			onGetIntButtonClicked,
    			onGetLongButtonClicked,
    			onGetStringButtonClicked,
    			onGetArrayButtonClicked,
    			onGetMapButtonClicked,
    			onPutBooleanButtonClicked,
    			onPutIntButtonClicked,
    			onPutLongButtonClicked,
    			onPutStringButtonClicked,
    			onPutArrayButtonClicked,
    			onPutMapButtonClicked,
    		};
    	},
    });
    
    </script>
    
    <style>
    </style>