はい、それらは定義されています。整理してリポジトリにプッシュします。
埋め込みコンポーネントを使用した双方向バインディングの一例を示すテストがあれば、非常に役立ちます!![]()
はい、それらは定義されています。整理してリポジトリにプッシュします。
埋め込みコンポーネントを使用した双方向バインディングの一例を示すテストがあれば、非常に役立ちます!![]()
それにアクセスでき、scheduleRerender() 関数にもアクセスできました。テストとドキュメントを更新しました。
確認ですが、@bind は discourse-common/utils/decorators からインポートされていますか?
確認しました
特にウィジェットファイルはこちらです: layouts-tag-intersection-widget/layouts-tag-combo.js.es6 at master · paviliondev/layouts-tag-intersection-widget (github.com)
非常に WIP で、述べたように動作しません。
(現状でテストするには Layouts プラグインのインストールと設定が必要ですが、ウィジェットコードを抽出するのは簡単です)
これは役立つかもしれません。
- @onChange={{action @data.onChangeUpdateTagSet}}/\u003e
+ @onChange=@data.onChangeUpdateTagSet/\u003e
「クロージャアクション」を渡す場合、(action ヘルパーは必要ありません(この場合、実際には問題を発生させているようです)。
TypeError: this.attrs.onChange is not a function のような結果になるようですが、そのヘルパーが利用可能な属性を隠している可能性はありますか?
すみません、そこには波括弧が必要です。そうしないと、文字列属性として解析されてしまいます。
- @onChange={{action @data.onChangeUpdateTagSet}}/\u003e
+ @onChange={{@data.onChangeUpdateTagSet}} /\u003e
残念ながら、同じエラーが発生します。
ブレークポイントを追加して、this.attrs.onChange の値を確認してください。(開発者ツールの「例外発生時に一時停止」機能が役立つかもしれません)
@Davidさんと私はプライベートメッセージでこれを解決しました。
お時間をいただきありがとうございました、@Davidさん。
完了したらTCを公開します。
これは今や実現しましたが、現時点では少し粗削りです。
Layouts Pluginが必要です。
テーマコンポーネントのリポジトリはこちら: GitHub - merefield/discourse-tc-bars-tag-intersection-chooser: A small widget to allow you to navigate to a topic list based on a combinations of tags
FYI、このコンポーネントは右サイドバーブロックもサポートするようになりました!
FYI このコンポーネントは Discourse Bars 🍻 🍸 (a sidebar framework) をサポートしています