首页 > 解决方案 > v-img 没有在功能组件中呈现 - Vuetify 2

问题描述

我已经安装@nuxtjs/vuetify并尝试v-img在功能组件中使用:

import Vue from 'vue'

export default Vue.extend({
  name: 'Logo',
  functional: true,
  render(createElement, { parent }) {
    const image = createElement('v-img', {
      props: {
        src: require('@/assets/images/logo.svg'),
        width: parent.$mq === 'lg' ? 200 : 170
      }
    })

    return createElement(
      'nuxt-link',
      {
        props: {
          to: '/'
        }
      },
      [image]
    )
  }
})

dev环境中,图像标签被正确渲染:

<div class="v-responsive v-image" style="width:200px;">...</div>

但是当我为生产构建我的应用程序时,它会输出:

<v-img></v-img>

它显然没有被渲染。如果我v-img在有状态组件中使用,那么它可以在生产中使用。怎么了?

更新 1

如果我作为第一个参数传入v-btncreateElement()它会在开发和生产中呈现。有什么问题v-img吗?

标签: javascriptvue.jsvuetify.jsnuxt.js

解决方案


推荐阅读