Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

bug: ion-menu's swipe-gesture causes error on other pages

Aperta Adatta ai principianti
#31,314 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
72/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Tranquilla
Stack tecnologico
typescript

Direzione di ricerca

Inizia in core/src/components/menu/menu.tsx, intorno alle righe 592-593, dove l'issue identifica che deltaX viene diviso per this.width e che viene chiamato animation.progressStep. Riproduci la navigazione iOS e la sequenza di scorrimento dal bordo sinistro con ion-menu abilitato, quindi verifica che il percorso di scorrimento non generi più l'errore relativo a un valore non finito quando il menu non viene renderizzato.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

triage
Prerequisites
Ionic Framework Version

v8.x

Current Behavior

On iOS, if you add ion-menu with swipe-gesture enabled on a page, and then navigate to a different page, and swipe from left side of screen to the right, there is a javascript error:

TypeError The provided value is non-finite 

Here is stacktrace:

    f://localhost/assets/p-CtukzcyX-BJW7t2Im.js:2:2217 
    [native code] forEach
    f://localhost/assets/p-CtukzcyX-BJW7t2Im.js:2:2210 Q
    f://localhost/assets/p-CtukzcyX-BJW7t2Im.js:2:5030 progressStep
    f://localhost/assets/p-CtukzcyX-BJW7t2Im.js:2:5022 
    [native code] forEach
    f://localhost/assets/p-CtukzcyX-BJW7t2Im.js:2:5002 progressStep
    f://localhost/assets/smartRouter-CIhTEPpS.js:2:463597 onMove

It seems to come from the code:

const step = deltaX / this.width; // deltaX / 0 = NaN
this.animation.progressStep(NaN); // throws "The provided value is non-finite"

This could be due to swipe using a full document listener, but menu has 0 width since it's not currently rendered.

Expected Behavior

No error

Steps to Reproduce

See above.

Code Reproduction URL

https://github.com/ionic-team/ionic-framework/blob/163cd24fc1eaa8bcce7a03524a375954cbb86bc4/core/src/components/menu/menu.tsx#L592-L593

Ionic Info

[repositories/fareclock-tc-next] $ ionic info

Ionic:

Ionic CLI : 7.2.1 (/Users/jacob/.volta/tools/image/packages/@ionic/cli/lib/node_modules/@ionic/cli)
Ionic Framework : @ionic/vue 8.8.13

Capacitor:

Capacitor CLI : 8.4.1
@capacitor/android : 8.4.1
@capacitor/core : 8.4.1
@capacitor/ios : 8.4.1

Utility:

cordova-res : 0.15.4
native-run : 2.0.3

System:

NodeJS : v24.14.0 (/Users/jacob/.volta/tools/image/node/24.14.0/bin/node)
npm : 11.9.0
OS : macOS Unknown

Additional Information

No response

Lingua principale
TypeScript
Stelle
52.7k
Fork
13.3k
Merge medio
3g 2m
PR unite (30g)
47

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di ionic-team/ionic-framework

Tutte le issue di ionic-team/ionic-framework

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.