如何访问vue.js应用程序中的JSON个对象我是这方面的新手

import json from './json/data.json'

JSON文件已加载,现在我必须访问其中的对象

推荐答案

只需将导入指定给数据属性

<script>
      import json from './json/data.json'
      export default{
          data(){
              return{
                  myJson: json
              }
          }
      }
</script>

然后使用v-for循环遍历模板中的myJson属性

<template>
    <div>
        <div v-for="data in myJson">{{data}}</div>
    </div>
</template>

NOTE

如果要导入的对象是静态的,即不发生更改,那么将其指定给数据属性将毫无意义,因为它不需要是被动的.

Vue将data选项中的所有属性转换为getter/setter,以使属性成为react 性的.因此,对于vue来说,为不会改变的数据设置getter/setter是不必要的,而且会增加开销.见Reactivity in depth.

因此,您可以创建一个自定义选项,如下所示:

<script>
          import MY_JSON from './json/data.json'
          export default{
              //custom option named myJson
                 myJson: MY_JSON
          }
    </script>

然后使用$options循环浏览模板中的自定义选项:

<template>
        <div>
            <div v-for="data in $options.myJson">{{data}}</div>
        </div>
    </template>

Vue.js相关问答推荐

Nuxt 3中间件在部署到Netliy时基于IP国家代码的重定向不起作用

在VITE-VUE APP-DEV模式上重定向HTTP请求

使用计算(computed)属性更改视图

props至少应该定义它们的类型

如何在 vuejs 自定义指令中传递动态参数

如何在 vue.js 模板中显示空间而不是 undefined 和 null?

如何在 vue.js 中删除类

全局方法和实例方法有什么区别?

Vue.js 中 Chrome 和 Datalist 的性能问题

如何有条件地更改 vue/vuetify 文本字段 colored颜色

vue-router的router-link实际刷新?

Vue Prop 没有初始化器,也没有在构造函数中明确赋值

Vuejs:我应该在 vue-router SPA 中的哪里放置一些常用的 js 工具?

为 webpack HMR Vue.js 包含来自外部项目文件夹的可导入模块

包含 Vue 组件的 HTML 字符串的 Nuxt 渲染函数

无法访问数据对象的嵌套属性

输入文件 Select 事件在 Select 同一文件时未触发

执行调度程序刷新期间未处理的错误,这可能是一个 Vue 内部错误

将 SignalR 与 Vue.js 和 Vuex 集成

使用 Firebase Auth for Google 将匿名用户转换为注册用户