私はいくつかのデータを必要とするvueコンポーネントを持っています。私は簡単に作成し、PHPのjsonデータをコンポーネントに渡します。しかし、私はjavascriptでオブジェクトを定義し、それをvueコンポーネントに送信したいと思います。以下は、php変数を正しく渡す私の.blade.phpファイルです。スクリプトセクションでは、javascriptオブジェクトjs_table_definitionを定義します。そのオブジェクトはコンポーネントに行きたくありません。javascriptからvuejsコンポーネントにjavascript変数を渡します。
<?php
$table_definition = (object) [
"name" => "vendors",
"access" => "read",
"search_post_route" => "",
"index_post_route" => "",
"index_get_route" => "",
"header_definition" => [],
"footer_definition" => [],
"column_definition" => [],
];
?>
@section('content')
<div class="panel-body">
<zzi-results-table
v-bind:results="{{ json_encode($vendors) }}"
v-bind:table_definition="{{ json_encode($table_definition) }}"
>
</zzi-results-table>
</div>
@stop
@section('script')
//can't get this variable to zzi-results-table
js_table_definition = {
"name" : "vendors",
"access" : "read",
"search_post_route" : "",
"index_post_route" : "",
"index_get_route" : "",
"header_definition" : [],
"footer_definition" : [],
"column_definition" : [],
};
@stop
私は運がないすべての種類のものを試しました。私はそれが私はそれがグローバル変数をハードコードし、それは非常に再利用可能でなくなるようVUEコンポーネントの「データ」メソッドに追加したくない
v-bind:table_definition="{{ js_table_definition }}"
v-bind:table_definition="@{{ js_table_definition }}"
v-bind:table_definition="js_table_definition"
js_table_definition="js_table_definition"
ようなものになるだろうと思いました。私はそれを渡す必要があると思う。 PHP-Vars-To-Js-Transformer:ここ
は、JavaScriptパッケージを使用することができ、私のコンポーネントのjsexport default {
//data: function(){
// return
// {
// vendors:vendors
// }
// },
props: ['results', 'table_definition'],
mounted() {
console.log('Hi from zzi-results-table');
console.log(this.results);
console.log(this.table_definition);
var results_table = new dynamic_table(this.table_definition, this.results);
},
}
は、レンダリングされたHTMLは、具体的には、 'V-バインドを中心に、どのようなものに見えるん:table_definition = "{{json_encode($ table_definition)}}"'? – Phil
これは、作業コード... PHPのV-バインドからダンプである:table_definition = "{"名":"ベンダー"、"アクセス":"は、"を読ん" search_post_route ":" "、" index_post_route ":" " 、" index_get_route ":" "、" header_definition ":[]、" footer_definition ":[]、" column_definition ":[]} "javascript変数を挿入しようとすると、さまざまな結果が得られます。私も文字列にしようとしました – Iannazzi