File tree Expand file tree Collapse file tree 2 files changed +36
-2
lines changed Expand file tree Collapse file tree 2 files changed +36
-2
lines changed Original file line number Diff line number Diff line change 1
- import { Frame as NSCFrame , Page as NSCPage } from '@nativescript/core' ;
1
+ import {
2
+ Frame as NSCFrame ,
3
+ Page as NSCPage ,
4
+ TabView as NSCTabView ,
5
+ TabViewItem as NSCTabViewItem ,
6
+ } from '@nativescript/core' ;
2
7
3
8
import { warn } from '@vue/runtime-core' ;
4
9
@@ -218,4 +223,33 @@ export function registerCoreElements() {
218
223
} ,
219
224
} ,
220
225
) ;
226
+
227
+ registerElement (
228
+ 'TabViewItem' ,
229
+ ( ) => require ( '@nativescript/core' ) . TabViewItem ,
230
+ ) ;
231
+
232
+ registerElement ( 'TabView' , ( ) => require ( '@nativescript/core' ) . TabView , {
233
+ model : {
234
+ prop : 'selectedIndex' ,
235
+ event : 'selectedIndexChange' ,
236
+ } ,
237
+ nodeOps : {
238
+ insert ( child , parent ) {
239
+ const tabView = parent . nativeView as NSCTabView ;
240
+
241
+ if ( child . nativeView instanceof NSCTabViewItem ) {
242
+ const items = tabView . items || [ ] ;
243
+
244
+ parent . setAttribute ( 'items' , items . concat ( [ child . nativeView ] ) ) ;
245
+ }
246
+ } ,
247
+ remove ( child , parent ) {
248
+ const tabView = parent . nativeView as NSCTabView ;
249
+ const items = tabView . items . filter ( ( item ) => item !== child . nativeView ) ;
250
+
251
+ parent . setAttribute ( 'items' , items ) ;
252
+ } ,
253
+ } ,
254
+ } ) ;
221
255
}
Original file line number Diff line number Diff line change 1
- import { NSVElement , NSVViewFlags } from '../dom' ;
1
+ import type { NSVElement , NSVViewFlags } from '../dom' ;
2
2
3
3
export type NSVElementResolver = ( ) => any ;
4
4
You can’t perform that action at this time.
0 commit comments