Problema con DiscoTOC: TypeError: _offsetCalculator.headerOffset non è una funzione

Gentile team di Discourse, Gentile @Johani,

grazie mille per l’eccellente componente aggiuntivo di Discourse DiscoTOC - automatic table of contents.

Ieri, un utente ha segnalato che la navigazione TOC ha smesso di funzionare su community.hiveeyes.org, un esempio si trova qui [1]. L’istanza sta eseguendo Discourse 2.8.0.beta10 e l’ultima versione di DiscoTOC, aggiornata dal gestore dei componenti del tema.

Su altre due istanze di Discourse, tutto sembra essere a posto:

  • 2.8.0.beta10 (self-hosted), DiscoTOC 17 commit indietro, su 5b051e18 [2]
  • 2.9.0.beta2 (piano aziendale), DiscoTOC 1 commit indietro, su 9933031 [3]

Pensi che la causa possa essere uno degli altri plugin che abbiamo installato sul sistema [4]? Non abbiamo mai riscontrato alcun tipo di problema simile con DiscoTOC fino ad ora.

Grazie in anticipo per il tempo che dedicherete a esaminare la questione. Siamo inclini a credere che si tratti di qualcosa di banale da parte nostra, poiché non siamo stati in grado di scoprire segnalazioni simili da parte di altri. D’altra parte, l’esito qui potrebbe aiutare altri che osservano cose simili.

Cordiali saluti,
Andreas.


L’errore nella console del browser di Firefox è Uncaught TypeError: _offsetCalculator.headerOffset is not a function nella funzione updateTOCSidebar.



  1. https://community.hiveeyes.org/t/installation-von-saraswati-auf-sbc-systemen-debian-mit-upload-per-rsync-oder-ftp/4084 ↩︎

  2. Panodata Map Panel for Grafana - The workbench - Panodata Community ↩︎

  3. Interpolating missing time-series values - Tutorials - CrateDB Community ↩︎

  4. Plugin installati.

    ↩︎
1 Mi Piace

Il plugin footnote è un po’ difficile da leggere su mobile. Inserirò anche un elenco qui, in modo che sia più visibile. :+1: (non mi sembra che ci siano conflitti evidenti, ma qualcun altro potrebbe notare qualcosa)

Plugin installati:

1 Mi Piace

Ciao di nuovo,

seguendo il riferimento a updateTOCSidebar:210, Firefox mostra questo codice

210: var distance = Math.abs(_domUtils.default.offset(heading).top - (0, _offsetCalculator.headerOffset)() - window.scrollY);

con un indicatore che potrebbe esserci un errore di sintassi
image

mentre il codice originale è

Pensi che ci sia una remota possibilità che si tratti di problemi iniziali con REFACTOR: General component overhaul by pmusaraj · Pull Request #19 · discourse/DiscoTOC · GitHub, @pmusaraj?

Questo può essere ispezionato sulla nostra istanza pubblica di Discourse, ad esempio sulla pagina https://community.hiveeyes.org/t/installation-von-saraswati-auf-sbc-systemen-debian-mit-upload-per-rsync-oder-ftp/4084.

Cordiali saluti,
Andreas.

/cc @eviltrout, @cvx, @j.jaffeux

1 Mi Piace

Penso che headerOffset, utilizzato da DiscoTOC a partire dal refactoring del 18 gennaio, appaia in app/assets/javascripts/discourse/app/lib/offset-calculator.js in questo commit il 7 gennaio, tra la 2.8.0.beta10 (21 dicembre) e la 2.8.0.beta11 (13 gennaio).

2 Mi Piace

Quindi dovremmo aggiornare Discourse o eseguire il downgrade di DiscoTOC a una versione precedente al refactoring, giusto? Grazie!

1 Mi Piace

Sì.

Una cosa che dovresti sempre fare prima di segnalare un bug è cercare di vedere se è ancora presente sull’ultima versione {tests-passed|stable}.

5 Mi Piace

Certamente, grazie mille!

Ma ho anche un’altra prospettiva sulla segnalazione di cose che vorrei condividere in questo contesto: alimentare i motori di ricerca per dare ad altri che osservano lo stesso errore una guida su come gestire e mitigare il problema.

Ad esempio: Ehi, cosa sta succedendo qui? »Uncaught TypeError« sulla console del browser? Lascia che lo incolli subito nella casella di ricerca. Ah, ecco qua – vedo, basta aggiornare Discourse o declassare DiscoTOC. Grazie, ciao.


Grazie mille per il tuo rapido supporto, Richard! Lo apprezzo.

Ciao di nuovo,

volevamo solo segnalare che dopo l’aggiornamento a Discourse 2.9.0.beta2, tutto è di nuovo in ordine.

Grazie mille e cordiali saluti,
Andreas.

2 Mi Piace