4

Angular は ui-router と連携して、アプリケーション内で移動するために状態を定義できます。たとえば、まだ 1 つのページにいる場合、ページの左側にリスト ビューを表示し、右側に詳細ビューを表示できます。次に、左のリストからレコードを変更するたびに、詳細も変更されますが、同じページにいます。それは WebSharper でも可能ですか、それともシナリオに対処する他のオプションはありますか?

また、Angular にはテンプレート (およびディレクティブ) の概念があります。これにより、特に、ネイティブ html コードをテンプレートにラップし、それを他の html ページのディレクティブの一部として使用できます。たとえば、select2 などの JavaScript ライブラリを使用できます。select2ライブラリを使用するなど、WebSharperでも可能ですか?

4

1 に答える 1

7

私は Angular にあまり詳しくありませんが、あなたがリストした機能のほとんどは WebSharper で拡張機能として利用できます: WebSharper.UI.Next。説明したように、クライアント側のルーティングを定義できます。テンプレート機能もありますが、まだ開発中のため、ドキュメントはまだありません (ただし、プロジェクトではすでに積極的に使用しています)。ライブラリ全体は、リアクティブな単一ページ アプリケーションを作成するために使用されることを意図しているため、Angular の代替として使用できます (もちろん、それほど広範ではありません)。

テンプレートについて: F# でコードを記述しているため、UI.Next には HTML コンビネータを処理するための便利な DSL が実装されているため、F# でビューを定義し、テンプレート作成がより親しみやすくなるまで、プロジェクト全体でそれらを再利用できます。

外部ライブラリ (select2 など) を使用できますが、追加の作業、つまりライブラリ (または少なくとも使用するライブラリの一部) の型を定義する必要があります。F# コードを作成しているため、明示的な型を知る必要があるため、型を処理する JavaScript ライブラリの "バインディング" を作成する必要があります。型があるので便利ですが、大規模なプロジェクトでは非常に面倒です。これを行う方法の詳細については、WIG のドキュメントを参照してください。

于 2015-08-25T15:01:15.870 に答える