github / github/remote-input-element
Ability to prevent/cancel fetch on focus
- 主要語言
- JavaScript
- 星號
- 91
- 分支
- 17
- 平均合併
- 1 天 19 小時
- 30 天內合併 PR
- 5
描述
I'm using the remote input in a [SelectMenu](https://primer.style/css/components/select-menu#githubcom-usage). The menu's SelectMenu-list is controlled by the remote input. When the page is rendered server-side, a few commonly used items are rendered in the SelectMenu-list to save the user time. The problem I have is these items are instantly cleared when the SelectMenu opens and the remote input receives focus due to the remote input doing the initial fetch.
Would the team be open to a PR that makes it possible to skip/cancel the initial fetch? I'd like to avoid the unnecessary round-trip to the server to get suggestions for the empty string query and preserve by server-side rendered default SelectMenu items. If yes, should it be done via html attribute or by preventing default on one of the custom events?
Two other questions:
1. Should load fire before the fetch starts?
https://github.com/github/remote-input-element/blob/4ec740a69773f4b18dfeef28d52434b0475bcd13/src/index.ts#L132-L134
2. Most github elements store state in a weakmap and use module functions (as opposed to class properties and methods). This makes it difficult to monkey patch component behavior. Is that the intent?
Thank you for sharing the github elements. They're super useful and I love the decoupling of the styles from the behavior.
貢獻指南
研究方向
從 src/index.ts 第 132-134 行附近開始,追蹤由焦點觸發的初始 fetch 及其自訂事件。確定 opt-out 或取消 API 應如何與遠端輸入以及伺服器渲染的 SelectMenu-list 項目互動,然後將完成條件定義為:在不發出空查詢請求的情況下保留這些項目。該 issue 沒有提到測試檔案,因此請在變更行為之前找到現有的 fetch 或事件涵蓋範圍。
由索引模型根據 Issue 內容生成。
評估
- 技術堆疊
- javascript
- 領域
- frontend
- Issue 類型
- 功能
- 難度
- 4/5
- 預估耗時
- 3-5 天
- 活躍度
- 停滯
- 描述清晰度
- 基本清楚
- 新手友好度
- 35/100