【问题标题】:vue.js vuetify test-utils warning : Vue warn]: Invalid prop: type check failed for prop "src". Expected String, got Objectvue.js vuetify test-utils 警告:Vue 警告]:无效的道具:道具“src”的类型检查失败。预期字符串,得到对象
【发布时间】:2019-01-31 13:05:08
【问题描述】:

使用 v-parallax vuetify 和 prop 来显示资产 URL(这是推荐的 hack..)

 <v-parallax :src="parallaxUrl()">

 methods: {
    parallaxUrl() {
      return require("@/assets/images/hero.jpeg");
    },

我得到正确显示的图像,但运行 test:unit ,我也得到一个警告,因为 v-parallax 需要一个字符串而不是一个对象...... 测试正确通过(它只是一个警告..),但是有没有办法摆脱这个警告?

感谢反馈

【问题讨论】:

    标签: unit-testing vue.js vuetify.js vue-test-utils


    【解决方案1】:

    测试.default:

    return require("@/assets/images/hero.jpeg").default;
    

    【讨论】:

      【解决方案2】:

      当您需要一个文件时,它会返回该文件的数据内容。对于图像,它返回一个 Blob 对象。并且由于 v-parallax 中 src 属性的定义表明 src 的值应该是一个字符串(图像的路径),Vue 会抛出该警告消息。

      要删除警告消息,您可以更新 v-parallax 中src 的定义,以同时接受对象和字符串。

      props: {
        src: [String, Object]
      }
      

      您可以返回图片的路径,而不是返回图片内的数据。

      <v-parallax :src="parallaxUrl()">
      
      methods: {
        parallaxUrl() {
          return "./assets/images/hero.jpeg"
        },
      }
      

      https://vuejs.org/v2/guide/components-props.html#Prop-Types
      https://webpack.js.org/guides/asset-management/

      【讨论】:

      • 非常感谢......我发现我也可以将图像移动到公共文件夹并直接使用:
      猜你喜欢
      • 1970-01-01
      • 2021-09-04
      • 2023-01-10
      • 2021-05-19
      • 2021-11-07
      • 2018-12-15
      • 2020-06-28
      • 1970-01-01
      • 2021-11-15
      相关资源
      最近更新 更多