Vue.js img src는 변수와 텍스트를 연결합니다.


105

Vue.js 변수를 이미지 URL과 연결하고 싶습니다.

내가 계산 한 것 :

imgPreUrl : function() {
    if (androidBuild) return "android_asset/www/";
    else return "";
}

Android 용으로 빌드하는 경우 :

<img src="/android_asset/www/img/logo.png">

그밖에

<img src="img/logo.png">

계산 된 변수를 URL과 연결하려면 어떻게해야합니까?

나는 그것을 시도했다 :

<img src="{{imgPreUrl}}img/logo.png">

답변:


205

속성에는 컬리 (콧수염 태그)를 사용할 수 없습니다. 다음을 사용하여 데이터를 연결하십시오.

<img v-bind:src="imgPreUrl + 'img/logo.png'">

또는 짧은 버전 :

<img :src="imgPreUrl + 'img/logo.png'">

Vue 문서 에서 동적 속성에 대해 자세히 알아보세요 .


"그러나 Vue.js는 실제로 모든 데이터 바인딩 내에서 JavaScript 표현식의 모든 기능을 지원합니다.": vuejs.org/v2/guide/syntax.html#Using-JavaScript-Expressions
Alexey

40

다른 경우에는 백틱이있는 템플릿 리터럴 ES6을 사용할 수 있으므로 다음과 같이 설정할 수 있습니다.

<img v-bind:src="`${imgPreUrl()}img/logo.png`">

4
나는 이것을 시도했지만 내 URL이 "@. / assets / syndicate_images / 34.jpg"로 브라우저에 출력되기 때문에 바인딩이 처리되기 전에 webpack이 실행되는 것 같습니다.
PrestonDocks

imgPreUrl함수가 아니라 변수입니다.
Goodbye StackExchange 2019-04-23


1

데이터베이스에서 이것을 처리하면 다음을 시도하십시오.

<img :src="baseUrl + 'path/path' + obj.key +'.png'">
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.