Vue: バインドされたデータにバッククォートが含まれている場合の不正な解析

作成日 2016年07月14日  ·  5コメント  ·  ソース: vuejs/vue

Vue.jsバージョン

1.0.26

複製リンク

http://codepen.io/sirlancelot/pen/zBPVBo?editors=1010#0

再現する手順

  • インラインオブジェクトをバッククォート文字を含む値でバインドします

    何が期待されますか?

  • オブジェクトはデータモデルで適切に再現されます

    実際に何が起こっているのですか?

  • scope.は、バッククォートとエスケープされたクォートの間のすべてに追加されています。

小道具を使用して、サーバーからブラウザーに初期データモデルをカレーします。 CodePenに示されている例と同様の方法でそれを行っています。 基本的に、ルートVueインスタンスには、要素に表示され、サーバーによって入力される小道具のリストが含まれています。

bug

最も参考になるコメント

@ LinusBorg-私はhttps://www.debuggex.com/を非常に便利に使用しました!

全てのコメント5件

一時的な回避策として、バッククォートをエスケープすることで問題を回避できます。

//broken
:items="[{'title':'one','value':1},{'title':'t`wo','value':2}]"

//works
:items="[{'title':'one','value':1},{'title':'t\`wo','value':2}]"

調査している人にとっては、配列に要素が1つしかない場合は問題が発生しないようです。

正規表現に変更を加えましたが、現在は正常に機能しているようです。 ただし、これは非常に重要な正規表現のようであり、パッチについてはよくわかりません。

screen shot 2016-07-19 at 10 45 27 pm

(その部分を赤で強調表示しました)

screen shot 2016-07-19 at 10 45 02 pm

@skyronicそれはどの

@ LinusBorg-私はhttps://www.debuggex.com/を非常に便利に使用しました!

@skyronic thx! 私はhttp://rubular.com/をよく使用します。 ruby libでテストしますが、正常に動作します。

このページは役に立ちましたか?
0 / 5 - 0 評価