1# ArkUI子系统LocalStorage类接口ChangeLog 2 3## cl.LocalStorage.1 get接口返回类型变更 4 5**变更影响** 6 7返回类型从get<T>(propName: string): T变更为get<T>(propName: string): T | undefined 8应用不需要进行适配。 9 10## cl.LocalStorage.2 setOrCreate参数newValue变成必选 11**变更影响** 12 13原接口声明: 14```js 15setOrCreate<T>(propName: string, newValue?: T): boolean 16``` 17现接口声明: 18```js 19setOrCreate<T>(propName: string, newValue: T): boolean 20``` 21第二个参数newValue变为必选。 22如果应用调用这个接口没有指定newValue参数,在替换新的sdk后会编译不过,需要手动指定newValue。 23 24**适配指导** 25 26```js 27let storage = new LocalStorage(); 28storage.setOrCreate('propA', 'hello'); 29``` 30## cl.LocalStorage.3 link参数和返回类型变更 31**变更影响** 32 33原接口声明: 34```js 35link<T>(propName: string, linkUser?: T, subscribersName?: string): T 36``` 37现接口声明: 38```js 39link<T>(propName: string): SubscribedAbstractProperty<T> 40``` 411. link第二三个参数为框架内部调用,不应对外开发,所以将接口变更为一个参数; 422. 返回类型T变更为SubscribedAbstractProperty; 43 44**适配指导** 45 46```js 47let storage = new LocalStorage({"PropA": "47"}); 48let linA = storage.link("PropA"); 49linA.set(50); 50``` 51 52## cl.LocalStorage.4 setAndLink参数和返回类型变更 53**变更影响** 54 55原接口声明: 56```js 57setAndLink<T>(propName: string, defaultValue: T, linkUser?: T, subscribersName?: string): T 58``` 59现接口声明: 60```js 61setAndLink<T>(propName: string, defaultValue: T): SubscribedAbstractProperty<T> 62``` 631. setAndLink第三四个参数为框架内部调用,不应对外开发,所以将接口变更为2个参数; 642. 返回类型T变更为SubscribedAbstractProperty; 65 66**适配指导** 67 68```js 69let storage = new LocalStorage({"PropA": "47"}); 70let linA = storage.setAndLink("PropA", "48") 71linA.set(50); 72``` 73 74## cl.LocalStorage.5 prop参数和返回类型变更 75**变更影响** 76 77原接口声明: 78```js 79prop<T>(propName: string, propUser?: T, subscribersName?: string): T 80``` 81现接口声明: 82```js 83prop<S>(propName: string): SubscribedAbstractProperty<S> 84``` 851. prop第二三个参数为框架内部调用,不应对外开发,所以将接口变更为1个参数; 862. 返回类型T变更为SubscribedAbstractProperty; 87 88**适配指导** 89 90```js 91let storage = new LocalStorage({"PropA": "47"}); 92let propA = storage.prop("PropA"); 93propA.set(51); // one-way sync 94``` 95 96## cl.LocalStorage.6 setAndProp参数和返回类型变更 97**变更影响** 98 99原接口声明: 100```js 101setAndProp<T>(propName: string, defaultValue: T, propUser?: T, subscribersName?: string): T 102``` 103现接口声明: 104```js 105setAndProp<S>(propName: string, defaultValue: S): SubscribedAbstractProperty<S> 106``` 1071. setAndProp第三四个参数为框架内部调用,不应对外开发,所以将接口变更为2个参数; 1082. 返回类型T变更为SubscribedAbstractProperty; 109 110**适配指导** 111 112```js 113let storage = new LocalStorage({"PropA": "47"}); 114let propA = storage.setAndProp("PropA", "48"); 115propA.set(51); // one-way sync 116```