質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Vue.js

Vue.jsは、Webアプリケーションのインターフェースを構築するためのオープンソースJavaScriptフレームワークです。

Vuetify.js

Vuetify.jsは、マテリアルデザインを基本とするVue.jsのCSSフレームワークです。多くのマテリアルデザインのコンポーネントを提供しており、あらゆるアプリケーションに対応可能。vue-cli用テンプレートがあり、簡単にページを作成できます。

Vue CLI

Vue CLIは、Vue.jsでアプリケーション開発を行うためのコマンドラインインタフェース(CLI)に基づいた開発ツールです。インタラクティブなプロジェクトの雛形や設定なしで使用できるプロトタイプの作成など、さまざまな機能が用意されています。

パス

パス(path)はファイルシステムの場所(階層)を明示したものです。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

1回答

2008閲覧

vue.jsでpublicに置いた写真をパスを使って表示したいが、バインドすると文字列として扱われてしまい表示することができません。

tenlife

総合スコア70

Vue.js

Vue.jsは、Webアプリケーションのインターフェースを構築するためのオープンソースJavaScriptフレームワークです。

Vuetify.js

Vuetify.jsは、マテリアルデザインを基本とするVue.jsのCSSフレームワークです。多くのマテリアルデザインのコンポーネントを提供しており、あらゆるアプリケーションに対応可能。vue-cli用テンプレートがあり、簡単にページを作成できます。

Vue CLI

Vue CLIは、Vue.jsでアプリケーション開発を行うためのコマンドラインインタフェース(CLI)に基づいた開発ツールです。インタラクティブなプロジェクトの雛形や設定なしで使用できるプロトタイプの作成など、さまざまな機能が用意されています。

パス

パス(path)はファイルシステムの場所(階層)を明示したものです。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2021/09/23 22:51

編集2021/09/24 23:08

vue.jsでアイテムに初期写真の設定をしています。
初期の写真はassetsに置いてある初期用の写真までのpathを代入しています。

解決したいこと
state.user.img_pathを使い写真を表示できるようにしたい

state.user.img_pathには'@/assets/profile.png'のパスが入っています

<img :src="state.user.img_path">  やりたいコード <img src="@/assets/profile.png">  表示出来るコード

試したこと
requireを使う -> 変化なし

<img :src="require(state.user.img_path)"> <img src="require(state.user.img_path)">

仮説
1, そもそも代入するpathが間違っている。
検証ツールで確認すると表示出来る場合は/img/profile.b90e2880.pngのようになっていたので、この内容に変更すると表示出来た。が、ランダムな値?b90e2880が入っていて本番環境で動かすには不安。

2, :src="state.user.img_path"の呼び出し方がおかしい?

3, dataにdefault_img_pathを用意して文字列を作ってからtemplateで呼び出す? -> 文字列で既に入っているので変わらない。

バインドすると文字列として扱われてしまい、写真を表示することができずにいます。
どなたかお分かりの方いましたら教えていただきたいです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Lhankor_Mhy

2021/09/24 05:11 編集

「publicに置いてある初期用の写真までのpath」とのことですが、「state.user.img_pathには'@/assets/profile.png'のパスが入っています」ともあります。 画像ファイルがあるのは、assets ですか? public ですか? https://webrandum.net/vue-cli-image-path/
tenlife

2021/09/24 23:07

ご指摘ありがとうございます。 assetsに画像ファイルを置いています。
guest

回答1

0

自己解決

public/img/profile.pngに写真を置くことで下記のコードで表示されるようになりました

<img :src="state.user.img_path" />

Lhankor_Mhyさんに教えていただいた下記が参考になりました。ありがとうございました!
https://webrandum.net/vue-cli-image-path/

投稿2021/09/25 00:04

tenlife

総合スコア70

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問