Perché il framework Ionic è così popolare per lo sviluppo mobile?
È una soluzione scritta male e a metà. Perderai un sacco di tempo per capire le sue peculiarità, e alla fine spenderai molto più tempo sul tuo progetto che se avessi usato solo JavaScript nativo e jQuery.
Perché? Perché la maggior parte dei componenti nativi sono versioni pre-alpha di qualche merda open source che un hobbista ha fatto nel suo tempo libero, ma ha abbandonato a metà strada. Elementi cruciali non funzionano, e non sono stati corretti per diverse versioni. Il team di Ionic è impegnato a pompare rapporti di vittoria sulle nuove versioni, ma non riescono a mantenere questo mucchio di spazzatura e fanno impazzire gli sviluppatori.
Esempi. Provate a creare una lista di immagini. Potete farlo, ma non scorrerà, perché questi furbacchioni hanno sostituito lo scorrimento nativo con qualche magia JavaScript. Sì, è molto meglio ora che non funziona, cazzo! Oh sì, c'è una soluzione, VirtualScroll - figo, una patch per sistemare la patch che ha incasinato la cosa già funzionante - ma se vuoi aggiungere immagini, devi usare l'elemento ion-img, che è di nuovo incasinato, semplicemente non visualizza le immagini se ne hai più di 4 o 5.
O c'è il componente PhotoViewer. Oh bello, un componente per visualizzare le immagini a schermo intero, con pulsanti di condivisione e tutto il resto... tranne che funziona solo con file di immagine sotto i 200 kilobyte! Altrimenti manda in crash l'intera app. Bene, quindi ora devi scrivere il tuo componente solo per visualizzare le immagini! Oppure scavate nel codice di questo giovane talento e correggete il bug, se ne avete il coraggio.
Hai creato un'app basata su schede? Stai cercando di nascondere la barra delle schede in certe pagine? Buona fortuna! No, non puoi, perché l'intero DOM scomparirà con loro.
Stai cercando di testare su un telefono? Bene, Ionic viene fornito con un server di test e può aggiornare immediatamente la tua app sul telefono. Solo che un sacco di funzioni non funzionano in questa modalità, e dopo alcuni refresh l'intera app inizia a comportarsi in modo irregolare, lanciando vari errori e tornando a versioni precedenti in modo arbitrario.
Seriamente non posso raccomandare Ionic 3 a nessuno. È un giocattolo, per chi ha troppo tempo a disposizione. Funziona benissimo nelle demo, ma appena si prova a fare qualcosa di serio, ti esplode in faccia.