代码之家  ›  专栏  ›  技术社区  ›  Alexander Kim

v-img不会在功能组件Vuetify 2中呈现

  •  0
  • Alexander Kim  · 技术社区  · 4 年前

    我已经安装 @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-btn 在里面 createElement() 作为第一个参数,它在开发和生产环境中都会被渲染。有点不对劲 v-img ?

    0 回复  |  直到 4 年前