【问题标题】:Cant get random data in vue js component无法在 vue js 组件中获取随机数据
【发布时间】:2018-07-09 15:18:58
【问题描述】:

我想在我的 html 中随机获取这些名称之一。 但我仍然无法让它工作:

Vue.component('modal', {
  template: '#modal-template',
 data: {
    items: [
      { name: 'You' },
      { name: 'Leonidas' }
     ]
 }, nowName : "",

 created () {
    const idx = Math.floor(Math.random() * this.items.length);
    this.nowName = this.items[idx]
  }
})

这是我的 vue 代码,我不知道它是否正常,是否可以用 {{ nowName }} 取回它。我用method()试了几次,只是在数据中起作用,但它并没有给我一个随机的回报。

【问题讨论】:

  • 在组件中,数据必须是一个函数。你上面写的不是一个有效的 Vue 组件;如果这就是你在代码中的内容,那它根本不起作用。

标签: javascript vue.js data-binding


【解决方案1】:

是什么让你认为它没有给你随机物品?在您的示例中,idx 将始终返回介于0this.items.length 之间的整数。 (01)。例如运行 10 次时:

const items = [
  { name: 'You' },
  { name: 'Leonidas' }
];
new Array(10).fill(null).forEach((num) => {
  const idx = Math.floor(Math.random() * items.length);
  console.log(items[idx]);
});

nowName 不在 data() 内部(应该是一个函数),这可能是您的问题吗?

【讨论】:

    猜你喜欢
    • 2020-09-20
    • 1970-01-01
    • 2020-02-10
    • 1970-01-01
    • 2018-09-16
    • 2020-09-27
    • 2020-10-08
    • 2019-09-16
    • 1970-01-01
    相关资源
    最近更新 更多