のプロパティ「長さ」を読み込めません:Vue.jsはヌル
<div class="panel panel-default" v-if="socialiteLogins !== null">
パネルが非表示になりません。 socialiteLogins === null
を単独でチェックするか、==を使用してチェックすると、どちらもオブジェクトがnullでないことが返されます。しかし、それは間違いなくヌルです。私がページにそれをダンプすると、[]が結果として得られます。それは空のjsonオブジェクトです。だから私はしようとした場合、この:
<div class="panel panel-default" v-if="socialiteLogins.length !== 0">
パネルがまだ隠さないと、私はこのエラーを取得:
Cannot read property 'length' of null
をしかし、私はこれを行う場合は、次の
<div class="panel panel-default" v-if="socialiteLogins !== null && socialiteLogins.length !== 0">
それはパネルを隠します初期ロード時には警告が全く出ませんが、後でsocialiteLogins変数を更新すると、空のjsonオブジェクトを再度返すと長さの警告が表示されます。どんな考え?
編集:
は、それに追加しています...私はこれを行う場合:
<div class="panel panel-default" v-show="socialiteLogins">
それは何も存在しないにもかかわらず、最初のロードに示し
が、私はページが読み込まそれを適切後にそれらを削除する場合パネルを隠す。したがって、唯一の問題は、レコードが存在しないことを適切に検出していない最初のローディングのように見えます。
おそらく、あなたの質問にタイプミスがあります。あなたが言う最初の例はうまくいかないが、最後の例はまったく同じで、あなたはそれがうまくいっていると言う。 – RyanZim
@RyanZimありがとうございました、さらにテストをしましたが、まだ動作しないので、質問を更新しました。 – Citizen