I had a look in the ionic 4 alpha 7 code, and i was a little bit disappointed.
I had a look on virtual-scroll, that’s why i shied away from ionic previously. I keep building my own framework, as many open source plugins simply didn’t work, and i have the flexibility to modify easily. Ionic was not that flexible for me.
I’m interested in learning from ionic team and other teams as i had got ideas in the past.
Question 1: I’m wondering whether the virtual scroll has been transformed to web-component, as it seems to me untouched (ok i see, how stencil works now) - or it will be used only with angular? It was buggy also.
My virtual scroll can deal with:
1, can handle elements with variable height
2, can update element while scrolling. (naturally the height shouldn’t change at that time)
3, can handle selection rules
4, can scroll to a specific row, even if it’s not loaded yet, even with variable heights.
5, can track the top element for further use - (Google calendar)
6, can scroll up like down - (does not use any loading component)
7, can go next / prev element even if the row contains more element - it’s useful if you want to step your element one by one in a bigger size in a modal window
8, can lazy load heavy parts of the items inside the virtual-scroll (disappears while scrolling, and just loaded in the visible area, which is different from the item creation - as virtual scroll tends to create 3 pages, but i’m lazy loading heavy parts only in one page, naturally non-heavy (does not cause issues with the scrolling) in 3 pages)
9, can page up / down
To develop these features took me 1,5-2 month, but at least i’m satisfied with the performance and the results. I hoped that i get some help, but unfortunately i had to do everything, so it remains closed-source.
Unfortunately i had other components when i moved away, but not that many like in ionic, because many of them was just simple replace of html.
Yes, i’m using pure cordova at the moment, but until ionic 4 finishes its long road map, i can use different technologies.
Question 2: How reliable the capacitor is? I’m using my own plugins, so i can transform them easily.
I’m not sure i have any more time to grasp the idea, and build my own one mixing with microsoft ace or so.
I was able to develop swift plugin under cordova, the only problem is, that i haven’t real device, and apple account, so i had to tweak a little bit on permissions to work with emulator.
I used also electron. I had to say it’s very lightweight, my big worry if it’s built by capacitor, than i cannot upgrade the first day when new release is coming out.
Unfortunately if popular cordova plugins haven’t been transformed to capacitor in a more manageable, bug free and battery saver way there is not too much gain what i can take from it. (It’s a guess, anyway i’m rewriting the most popular ones to one particular package) Loading time of my app is not that much, i think maybe less than 1 sec (not a big headache), but to be honest i’m also using the most up-to-date version of angular and cordova.
To be honest the biggest selling point why i have chosen the hardest way,:
- I was fed up that i had to invest more time to work with something than just recreate, and i had to fix bugs even in cordova plugins.
- I dreamed of something highly configurable stuff can come from server side with proper permission management.
- I was not able to update angular and cordova when new releases was coming out.
- Ionic framework was too large - my app size is less than 500KB in js, and 30KB css, with ionic it was 3MB js and 400KB css
- My components also are very lightweight, they are just partially using angular, can be transformed far more easier to web-components.