2016-06-28 1 views
0

私のvueインスタンスから値を取得する隠しフィールドタグを含むフォームを送信する必要があります。例えばerbタグ内でハンドルバーを使用するには?

:とにかく

<%= form_for @post, new_data_path %> 
    <%= f.hidden_field :data, value: {{ data }} %> 
    <%= f.submit 'Checkout' %> 
<% end %> 

ハンドルがERBタグの内部で動作させるには?

+0

あなたの問題は、二重中括弧がVue構文と矛盾していることですか? ''のような何かをすれば、もっと詳しく –

+0

ええ、それは問題なく表示されますが、ハンドルバーの構文はerbタグ内では機能しません。私は 'syntax error、unexpected '}'、 ' – cvDv

答えて

2

ハンドルバーレンダリングの前に評価されているようです。だから今、あなたの二重の中括弧は、Vueのでは無視され、デフォルト{{}}

Vue.config.delimiters = ['@{', '}'] 

に変更するにはVueのdelimitersを使用してください。

+0

を取得するので、私はそれを私のvue.jsファイルに入れて、2つのカーリーバックを私が望むものに置き換えますか? – cvDv

+0

あなたのメインのVueファイルで、vueコードを入れたい場所の二重括弧を置き換えて、ハンドルバー –

+0

IMOを置いておきたい場合は、Vueコードをrails変数から分けた方が良いです。以前は[Vuejs and rails](https://github.com/YerkoPalma/vuejs-rails)を使ってテンプレートを作成していましたが、コントローラからレールまでのすべての変数を渡し、テンプレートを 'script'でラップしました私は実際にこの問題に直面しませんでした。レポをチェックすると、erb構文とvue構文を混同しないので、良いアプローチだと思います –

1

あなたは{{data}}を引用符で囲むだけで済みます。

関連する問題