DiscoTOCの問題:TypeError:_offsetCalculator.headerOffsetは関数ではありません

Discourseチーム様、Johani様

素晴らしいDiscourseアドオン DiscoTOC - automatic table of contents をありがとうございます。

昨日、ユーザーからcommunity.hiveeyes.orgでTOCナビゲーションが機能しなくなったとの報告がありました。例は [1] にあります。このインスタンスはDiscourse 2.8.0.beta10 を実行しており、テーマコンポーネントマネージャーからアップグレードされた最新のDiscoTOCを使用しています。

他の2つのDiscourseインスタンスでは、すべて正常に動作しているようです。

  • 2.8.0.beta10(セルフホスト)、DiscoTOC 17コミット遅延、5b051e18 [2]
  • 2.9.0.beta2(ビジネスプラン)、DiscoTOC 1コミット遅延、9933031 [3]

システムにインストールされている他のプラグインが原因である可能性はあるでしょうか [4]?DiscoTOCでこのような問題が発生したのは初めてです。

お忙しいところ恐縮ですが、ご確認いただけますと幸いです。他のユーザーからの同様の報告が見つからないため、おそらく私たちの側の些細な問題であると考えています。一方で、この結果は同様の現象を観察している他のユーザーにも役立つ可能性があります。

よろしくお願いいたします。
Andreas.


Firefoxのブラウザコンソールで表示されるエラーは、updateTOCSidebar 関数内の Uncaught TypeError: _offsetCalculator.headerOffset is not a function です。



  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. インストールされているプラグイン。

    ↩︎
「いいね!」 1

プラグインの脚注は、モバイルでは少し読みにくいです。より見やすくするために、ここにリストも記載します。:+1: (明白な競合は見当たりませんが、他の誰かが見つけるかもしれません)

インストールされているプラグイン:

「いいね!」 1

こんにちは、再び、

updateTOCSidebar:210 を参照すると、Firefox はこのコードを表示します。

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

構文エラーの可能性があることを示しています。

image

一方、元のコードは次のとおりです。

これは、REFACTOR: General component overhaul by pmusaraj · Pull Request #19 · discourse/DiscoTOC · GitHub の初期の問題である可能性があると思いますか、@pmusaraj

これは、たとえば https://community.hiveeyes.org/t/installation-von-saraswati-auf-sbc-systemen-debian-mit-upload-per-rsync-oder-ftp/4084 のページで、公開されている Discourse インスタンスで確認できます。

よろしくお願いいたします。
Andreas。

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

「いいね!」 1

18日のリファクタリング以降、DiscoTOCによって使用されているheaderOffsetが、7日のコミットhttps://github.com/discourse/discourse/commit/1ed2520589d988cc3299f8a85c8a20ade502f45d#diff-ee360fb09f76b3326cb85fe1cf363e30b3cc98e7d783dc97910f85dff0641990app/assets/javascripts/discourse/app/lib/offset-calculator.js内に、2.8.0.beta10(12月21日)と2.8.0.beta11(1月13日)の間に表示されていると思います。

「いいね!」 2

Discourse をアップグレードするか、リファクタリング前のバージョンの DiscoTOC にダウングレードするかのどちらかということですね。ありがとうございます!

「いいね!」 1

はい。

バグを報告する前に常に実行すべきことの1つは、最新の{tests-passed|stable}でまだ発生しているかどうかを確認することです。

「いいね!」 5

承知しました。ありがとうございます!

しかし、報告に関して別の視点もあり、この文脈で共有したいと思います。それは、検索エンジンに情報を与え、同じエラーに遭遇した他の人に、その問題に対処し軽減する方法のガイドラインを提供することです。

例えば、「おい、何が起こっているんだ?ブラウザコンソールに »Uncaught TypeError« が出ているぞ?すぐに検索ボックスに貼り付けてみよう。ああ、これだ – 見つけた、Discourse をアップグレードするか DiscoTOC をダウングレードすればいいだけだ。ありがとう、さようなら。」* のように。


リチャードさん、迅速なサポートを本当にありがとうございます!感謝しています。

こんにちは、

Discourse 2.9.0.beta2 にアップグレードした後、すべて正常に戻ったことをご報告いたします。

よろしくお願いいたします。
アンドレアス

「いいね!」 2