2017-11-20 9 views
0

、現在のユーザーのデータをAxiosで取得しています。 avatars/1/mNpxJNRrRPbbWSx0kuIL40JQJIF5SM5dscTq3zpv.jpegLaravelで生成されたURLをVue.jsにバインドする方法は?コンポーネント内の

私はこれをStorage :: disk( "s3")に挿入する必要があります。だから私はどのように私のコンポーネント内の変数のアバターを許可するのだろうか?

私はこのように試してみました:ブレード・ビューまたはコンポーネントにストレージを使用している場合、私はわからないんだけど...

+0

サーバー側とクライアント側 – lagbox

+0

どのようなエラーが発生しますか? – Brett

+0

エラーではなく、正しく表示されません。レンダリング: ") - > url( '+ this.user.avatar +') '"> –

答えて

0

<img :src="'Storage::disk("s3")->url(' + this.user.avatar + ')'">しかし、私はエラーを取得します。わかりやすくするために、VueコンポーネントのファサードをStorageにすることはできません。それはLaravelのためだけです。

コンポーネントには小道具を受け入れるか、またはStorageファサードの助けを借りてURLを返すLaravelルートを作成することができます。

オプション1 - ブレード・ビューで

を渡しプロップ、

<my-component :src="'{{ Storage::disk("s3")->url(' + this.user.avatar + ')' }}"> 

オプション2 - Laravelルート

は、あなたに

Route::get('api/my-avatar', [email protected]') 

のようなものを簡単なルートを作成します。 UserController

public function getAvatar() 
{ 
    return Storage::disk("s3")->url(auth()->user()->avatar); 
} 

とそのルートをaxiosから呼び出します。

関連する問題