diff --git a/libraries/mobile-ui/src/router-view/api.ts b/libraries/mobile-ui/src/router-view/api.ts index 9b09681d7..f0f7d43f7 100644 --- a/libraries/mobile-ui/src/router-view/api.ts +++ b/libraries/mobile-ui/src/router-view/api.ts @@ -12,5 +12,46 @@ namespace nasl.ui { super(); } } - export class VanRouterViewOptions extends ViewComponentOptions {} + export class VanRouterViewOptions extends ViewComponentOptions { + @Prop({ + title: '进入已打开页面时刷新', + description: '重新进入已打开页面时,会刷新页面', + setter: { + concept: 'SwitchSetter', + }, + }) + disableKeepAlive: nasl.core.Boolean = true; + + @Prop({ + title: '缓存页面', + description: '缓存页面,设置后只有匹配路径的页面会被缓存', + setter: { + concept: 'InputSetter', + }, + if: (_) => !_.disableKeepAlive, + bindOpen: true, + }) + keepAliveInclude: nasl.collection.List; + + @Prop({ + title: '不缓存页面', + description: '不缓存页面,设置后只有匹配路径的页面不会被缓存', + setter: { + concept: 'InputSetter', + }, + if: (_) => !_.disableKeepAlive, + bindOpen: true, + }) + keepAliveExclude: nasl.collection.List; + + @Prop({ + title: '缓存页面最大数量', + description: '最多可以缓存多少组件实例(默认 不设上限)', + setter: { + concept: 'NumberInputSetter', + }, + if: (_) => !_.disableKeepAlive, + }) + keepAliveMax: nasl.core.Integer; + } } diff --git a/libraries/mobile-ui/src/router-view/index.vue b/libraries/mobile-ui/src/router-view/index.vue index b268ec13c..f3e8d8e75 100644 --- a/libraries/mobile-ui/src/router-view/index.vue +++ b/libraries/mobile-ui/src/router-view/index.vue @@ -17,7 +17,10 @@ - + + + +