私は、データベースに格納されている既存のフィールド値を各入力に取り込むユーザーデータを更新するためのフォームを用意しています。しかし、新規ユーザーの場合、特定の値はまだデータベースにコミットされていないので、入力ボックスを空白にしたいと思います。玉変数の補間 - プロパティが未定義の場合のデフォルト値?
ユーザーデータを表示するために、私は翡翠の補間機能を使用してroutes.js
ファイルで渡された#{user.local}
オブジェクトを確認しています。
それはこの(スニペット)のようになります。
input(type="text", name="firstname", value="#{user.local.firstName}")
プロパティが定義されている場合これはうまく動作しますが、それは(正確に)プロパティが定義されていない入力にテキストとしてundefined
挿入します。
変数が設定されていない場合、変数をデフォルトに設定する方法はありますか?
ような何か:ヒスイを使用して
input(type="text", value="#{user.local.firstName || 'Default Text'"})
あなたは、このための解決策を見つけたことがありますか?私は現在、まったく同じ問題を抱えており、解決策を探しています。 – Stefan
翡翠自体ではない。私はちょうど私のコントローラにいくつかのロジックを追加する必要があるので、データを取得するときに 'undefined'を空の文字列などに置き換える必要があると思っています。そのデータはルータ経由でビューに渡されます。 – armadadrive
jade〜1.9.2を使用すると、 '' input(type = 'text' class = 'フォームコントロール' id = 'line6Name' name = 'param6' value = '#{device.param6 || "}}) '' 'は、私がそれをするときに、未定義の値に対して空の文字列のデフォルトを与えます。私は、あなたが二重引用符が閉じている場所に移動した場合には、そこにあるコードを喜んで利用しています。 –