mya*_*arc 2 javascript webpack vue.js vue-component vuejs2
我的 vue 应用程序,使用别名进行 img-src 绑定。它运行直接使用。
<img src="@/assets/search.png" />
Run Code Online (Sandbox Code Playgroud)
但是,此代码使组件,别名无法解析。
<template>
<div class="button-card">
<img :src="src">
</div>
</template>
<script>
export default {
name: 'Button Card',
props: {
src: {
type: String,
},
},
};
</script>
Run Code Online (Sandbox Code Playgroud)
使用组件构建结果 html:
<div class="button-card">
<img src="@/assets/search.png">
<!-- should be with resolve: src/assets/search.png -->
</div>
Run Code Online (Sandbox Code Playgroud)
Webpack 别名定义配置:
resolve: {
extensions: ['.js', '.vue', '.json'],
alias: {
'vue$': 'vue/dist/vue.esm.js',
'@': resolve('src'),
}
},
Run Code Online (Sandbox Code Playgroud)
为什么此代码无法解析?或者我该怎么做才能让它运行?
我认为应该使用data而不是props(您不是在创建新组件并将道具发送给它)。
你可以试试:
<img :src="require('@/assets/search.png')" />
Run Code Online (Sandbox Code Playgroud)
这是以下的简写:
<template>
<div id="app">
<img :src="image" />
</div>
</template>
<script>
import image from "@/assets/search.png"
export default {
data: function () {
return {
image: image
}
}
}
</script>
Run Code Online (Sandbox Code Playgroud)
希望能帮助到你!
| 归档时间: |
|
| 查看次数: |
3264 次 |
| 最近记录: |