ソース情報
- リポジトリ
- unoplatform/studio
- ソースの最終更新活動
- 2026年6月9日 19:39
- 検出された SKILL.md の言語
- 英語
- スター
- 10
- フォーク
- 1
インストール方法
デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。
ソースファイルを確認
インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。
メニュー
デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。
インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。
SOC 職業分類に基づく
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
直接コマンドでは確認用 Prompt が省略されます。実行前にソースを確認してください。
npx skills add https://github.com/unoplatform/studio --skill uno-mvux-listfeedコマンドは1行のまま表示されます。コピー前に横へスクロールして全体を確認してください。
ローカルで確認しますか?SkillsMP が現在取得できるファイルをダウンロードできます。
SKILL.md を表示中
| name | uno-mvux-listfeed |
| description | Create and use IListFeed<T> for reactive collections in MVUX. |
| when_to_use | Use when loading a list of items from a service or API, displaying collections in `ListView`, `GridView`, or `ItemsRepeater`, filtering list data reactively, or choosing between `IListFeed<T>` (read-only) and `IListState<T>` (mutable). |
| metadata | {"author":"uno-platform","version":"2.3","category":"mvux"} |
Docs lookup: call
uno_platform_docs_search(...)first, thenuno_platform_docs_fetch(sourcePath="…")using thesourcePathfield from a result (a relative.mdpath; add the result'sanchorfor a section). Never pass a URL, a.htmllink, or a hand-built path.
Search for and fetch the documentation:
uno_platform_docs_search("MVUX ListFeed reactive collection IListFeed")
Primary documentation pages:
external/uno.extensions/doc/Reference/Reactive/listfeed.mdexternal/uno.extensions/doc/Learn/Mvux/Walkthrough/ListFeed.howto.mdFetch the full reference:
uno_platform_docs_fetch(sourcePath="external/uno.extensions/doc/Reference/Reactive/listfeed.md")
From the fetched docs, the key factory methods on the ListFeed static class:
ListFeed.Async(...) — from a method returning Task<IImmutableList<T>>ListFeed.AsyncEnumerable(...) — from an IAsyncEnumerable<IImmutableList<T>>ListFeed.PaginatedAsync(...) — for paginated/infinite scroll (see uno-mvux-pagination skill)The reference page covers operators like Where, Select, and AsFeed. These operate on individual items in the collection.
For step-by-step examples:
uno_platform_docs_fetch(sourcePath="external/uno.extensions/doc/Learn/Mvux/Walkthrough/ListFeed.howto.md")
This covers loading a list, showing it with FeedView, filtering with Where, and when to use feeds vs states.
The how-to page shows how to bind IListFeed<T> to ListView via FeedView and access items through {Binding Data}.
IListFeed<T> is read-only — use IListState<T> for add/remove/updateValueTask<IImmutableList<T>> (from System.Collections.Immutable)Where and Select work on individual items, not the list itselfIListFeed<T> when data is pulled from a service and is read-onlyIListState<T> when you need to edit the collection client-sideAll item types used in IListFeed<T> MUST support key equality via Uno.Extensions.Equality.IKeyEquatable<T>. Without key equality, MVUX cannot distinguish between a modified entity and a completely different one, causing full list re-renders instead of granular item updates (flickering, lost scroll position, broken animations).
For partial record types, key equality is auto-generated when the record has a property named Id or Key:
public partial record Person(Guid Id, string Name, int Age);
// IKeyEquatable<Person> is generated automatically — Id is the key
Use [Key] attribute when the key property has a different name, or for composite keys:
public partial record OrderLine(
[property: Key] Guid OrderId,
[property: Key] int LineNumber,
string Product,
decimal Price);
Either Uno.Extensions.Equality.KeyAttribute or System.ComponentModel.DataAnnotations.KeyAttribute can be used.
Configure which property names are auto-detected as keys:
[assembly: ImplicitKeyEquality("Id", "Key", "EntityId")]
If auto-generation causes issues on a specific type:
[ImplicitKeys(IsEnabled = false)]
public partial record MyItem(Guid Id, string Name);
partial record (or manually implement IKeyEquatable<T>)KeyEquals returns true when two instances represent the same entity, even if other properties differ