KnockoutJS でプロパティ依存の作成/編集ビューを作成できません。
ここに問題があります。私が作成するものはすべて、ある種の「人」です。それは、医療専門家、配管工、機械工、またはエンジニアである可能性があります。その人がどのような人かによって、異なるデータを入力する必要があります。
ここに例があります:
Healthcare Professional: Name, Telephone, Hospital, etc.
Plumber: Name, Telephone, Crafts, etc.
Engineer: Name, Telephone, Specialities, etc.
私ができることは、ViewModel に「showCity」、「showHospital」などのプロパティを作成して、個々のフォーム フィールドを非表示にすることです。
ただし、分離のために、まったく異なるフォームを使用したいと思います。条件が満たされた場合にのみ表示されるように、それぞれのフォームを設定することもできます。
ただし、使用する必要があるそれぞれのフォームのみを KnockoutJS にレンダリングさせたいと思います (Person のタイプは、最初に作成されたときに常に決定されます。変更することはできません)。
私が最終的にやらないのは、表示される 1 つのフォームと、そこにある (そしてデータにバインドされている) が隠されている 10 のフォームを持つことです。
「if」バインディングを次のように使用しようとしました<div data-bind="with: $root.selectedPerson"><form data-bind="if: $data.type='mathematician'"></form></div>
が、役に立ちませんでした。
この場合のベストプラクティスが何であるかを知っている人はいますか?