javascript - 如何获取 JSON 中的 URL 并将其放入模式中?

标签 javascript json vue.js vuejs2

下图是我的 JSON 结构,它来自 MYSQL 并使用 NodeJS 进行检索,目前我正在将其渲染到我的 VueJS 中。

JSON IMAGE

这是video我的错误/错误。正如你所看到的,它显示了每个用户的所有二维码,即使我只点击了一个。

  • 它为我提供了表中每个人的 URL
  • 我只需按用户显示。

下面的代码工作正常,直到我将此代码插入到我的模态中 ":value="result.url":size="size"level="H"> 虽然它仍然有效,但不能我想要什么。

<tbody>
    <tr v-for="result in filteredPeople" :key="result.id">
        <td>{{result.Memb_ID}}</td>
        <th>{{result.First_Name}}</th>
        <th>{{result.Middle_Name}}</th>
        <th>{{result.Last_Name}}</th>
        <th>{{result.Address}}</th>

        <div class="btn">
            <button type="button" class="btn btn-success">Edit Details</button>
            <b-button v-b-modal.modal-1 class="btn btn-danger">Show QR</b-button>
        </div>

        <b-modal id="modal-1" title="QR">
            <div class="showQR text-center">
                <qrcode-vue :value="result.url" :size="size" level="H"/>
            </div>
        </b-modal>
    </tr>
</tbody>

<script>       

    import axios from "axios";
    import QrcodeVue from "qrcode.vue";
    export default {
                    data() {
        return {
          search: "",
          value: "",
          size: 250,
          results: {}
        };
       }, 


    methods: {
        getUsers() {
          axios
            .get("http://localhost:9000/api/users/")
            .then(response => (this.results = response.data))
            .catch(error => console.log(error));
        }
      },
    computed: {
        filteredPeople() {
          if (this.search) {
            return this.results.filter(result => {
              return result.First_Name.startsWith(this.search);
            });
          } else {
            return this.results;
          }
        }
      },
      components: {
        QrcodeVue
      }
    };

</script>

最佳答案

您应该为 v-for 中的每个项目拥有不同的模态 ID

<div class="btn">
  <button type="button" class="btn btn-success">Edit Details</button>
  <b-button v-b-modal="'modal-' + result.Memb_ID" class="btn btn-danger">Show QR</b-button>
</div >

<b-modal :id="'modal-' + result.Memb_ID" title="QR">
  <div class="showQR text-center">
    <qrcode-vue : value="result.url" :size="size" level="H"/>
          </div>
</b-modal>

关于javascript - 如何获取 JSON 中的 URL 并将其放入模式中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56745800/

相关文章:

javascript - 如何在nodejs中重复执行

php - JavaScript:从 json 对象中删除键

javascript - Vue.js 过滤列表

javascript - 如何使用get发送数据而不在url中显示参数?

javascript - v-将图像从对象绑定(bind)到 img src 不起作用

javascript - Google Feed API 行为

javascript - 为什么我的页脚在页面中间?

java - 如何使用 Java 在 Play 框架中读取 JSON 文件

javascript - JSON + PHP + JQuery + 自动完成问题

javascript - 获取 Rect 元素的屏幕像素坐标