Problema com DiscoTOC: TypeError: _offsetCalculator.headerOffset não é uma função

Prezada equipe do Discourse, Prezado @Johani,

Muito obrigado pelo excelente addon do Discourse DiscoTOC - automatic table of contents.

Ontem, um usuário relatou que a navegação do TOC parou de funcionar em community.hiveeyes.org, um exemplo pode ser encontrado em [1]. A instância está executando o Discourse 2.8.0.beta10 e o DiscoTOC mais recente, atualizado a partir do gerenciador de componentes de tema.

Em outras duas instâncias do Discourse, tudo parece estar funcionando bem:

  • 2.8.0.beta10 (auto-hospedado), DiscoTOC 17 commits atrás, em 5b051e18 [2]
  • 2.9.0.beta2 (plano empresarial), DiscoTOC 1 commit atrás, em 9933031 [3]

Você acha que o motivo pode ser algum dos outros plugins que instalamos no sistema [4]? Nunca tivemos nenhum tipo de problema semelhante com o DiscoTOC até agora.

Agradeço antecipadamente por dedicar seu tempo para analisar isso. Estamos inclinados a acreditar que será algo simples da nossa parte, pois ainda não conseguimos descobrir nenhum relatório semelhante de outros. Por outra perspectiva, o resultado aqui pode ajudar outros que observam coisas semelhantes também.

Com os melhores cumprimentos,
Andreas.


O erro no console do navegador do Firefox é Uncaught TypeError: _offsetCalculator.headerOffset is not a function na função 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. Plugins instalados.

    ↩︎
1 curtida

O plugin footnote é um pouco difícil de ler no celular. Vou colocar uma lista aqui também, para que fique mais visível. :+1: (nada salta aos olhos como um conflito óbvio, mas outra pessoa pode notar algo)

Plugins Instalados:

1 curtida

Olá novamente,

Ao seguir a referência para updateTOCSidebar:210, o Firefox mostra este código

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

com um indicador de que pode haver um erro de sintaxe

image

enquanto o código original é

Você acha que há uma possibilidade remota de que estes sejam problemas iniciais com REFACTOR: General component overhaul by pmusaraj · Pull Request #19 · discourse/DiscoTOC · GitHub, @pmusaraj?

Isso pode ser inspecionado em nossa instância pública do Discourse, por exemplo, na página https://community.hiveeyes.org/t/installation-von-saraswati-auf-sbc-systemen-debian-mit-upload-per-rsync-oder-ftp/4084.

Com os melhores cumprimentos,
Andreas.

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

1 curtida

Acredito que headerOffset, usado pelo DiscoTOC desde a refatoração de 18 de janeiro, aparece em app/assets/javascripts/discourse/app/lib/offset-calculator.js neste commit em 7 de janeiro, entre 2.8.0.beta10 (21 de dezembro) e 2.8.0.beta11 (13 de janeiro).

2 curtidas

Então devemos atualizar o Discourse ou rebaixar o DiscoTOC para uma versão anterior à refatoração, certo? Obrigado!

1 curtida

Sim.

Uma coisa que você sempre deve fazer antes de relatar um bug é tentar ver se ele ainda está presente na versão mais recente {tests-passed|stable}.

5 curtidas

Com certeza, muito obrigado!

Mas eu também tenho outra perspectiva sobre relatar coisas que gostaria de compartilhar neste contexto: alimentar os motores de busca para dar a outros que observam o mesmo erro uma orientação sobre como lidar e mitigar o problema.

Tipo: Ei, o que está acontecendo aqui? »Uncaught TypeError« no console do navegador? Deixe-me colar isso na caixa de pesquisa imediatamente. Ah, certo, aqui vamos nós – entendi, basta atualizar o Discourse ou fazer downgrade do DiscoTOC. Obrigado, tchau.


Muito obrigado pelo seu rápido suporte, Richard! Agradeço.

Olá novamente,

queríamos apenas informar que, após a atualização para o Discourse 2.9.0.beta2, tudo está em ordem novamente.

Muito obrigado e com os melhores cumprimentos,
Andreas.

2 curtidas