@anilkumarthakur/vue3-json-viewer

中文文档
0.6.0发布于 2026/07/16MITTypeScriptESM + CJS零依赖近 30 天下载 2760

一个美丽的,自定义的JSON取景器组件,用于Vue 3,有TypeScript支持,暗/光模式,扩展/拼接控制,和语法突出化.

中文使用文档
文档目录9 节
  1. 特征
  2. 演示
  3. 安装
  4. 设置
  5. 道具
  6. 方法
  7. 示例 JSON 数据结构
  8. 演示
  9. 类型脚本支持

Vue 3 JSON 查看器

这个插件提供了一个Vue 3组件,用于以有条理和视觉吸引力的方式渲染并和JSON数据互动. 它支持黑模式等特征,扩张和倒塌的巢状物体,以及更多.

特征

  • 黑暗模式:在光和暗的主题之间切换,以提高能见度.
  • 可扩展/可缩放对象: 方便地管理深层嵌入数据的能见度.
  • 可续用性:自定义取景器使用道具用于各种用例.
  • 高度可配置:控制扩展状态,暗模式,和数据渲染.

演示

Vue3 JSON Viewer Demo

安装

使用您的首选软件包管理器安装软件包 :

# For npm
npm install @anilkumarthakur/vue3-json-viewer

# For yarn
yarn add @anilkumarthakur/vue3-json-viewer

# For bun
bun add @anilkumarthakur/vue3-json-viewer

# For pnpm
pnpm add @anilkumarthakur/vue3-json-viewer

设置

导入和使用 JsonViewer vue 3 应用程序中的组件 :

  1. 导入样式表
    确保导入您组件中的样式或全球样式 :

    import '@anilkumarthakur/vue3-json-viewer/styles.css';
    
  2. 使用 JsonViewer 构成部分

    <script setup lang="ts">
      import { computed, ref } from 'vue';
      import { JsonViewer } from '@anilkumarthakur/vue3-json-viewer';
    
      // Sample JSON data to display
      const jsonData = {
        name: 'John Doe',
        age: 30,
        isActive: true,
        hobbies: ['reading', 'traveling', 'coding'],
        address: {
          street: '123 Main St',
          city: 'New York',
          coordinates: { latitude: 40.7128, longitude: -74.006 },
        },
        deepNestedObject: {
          level1: { level2: { level3: { level4: { deepKey: 'deep value' } } } },
        },
      };
    
      const isDarkMode = ref(true);
      const toggleDarkMode = () => (isDarkMode.value = !isDarkMode.value);
    
      const isExpanded = ref(true);
      const toggleExpanded = () => (isExpanded.value = !isExpanded.value);
    
      const computedExpanded = computed(() =>
        isExpanded.value ? 'expanded' : 'collapsed',
      );
    </script>
    
    <template>
      <button @click="toggleDarkMode">Toggle Dark Mode</button>
      <button @click="toggleExpanded">Toggle Expanded</button>
      <JsonViewer
        :data="jsonData"
        :expanded="isExpanded"
        :darkMode="isDarkMode"
        :key="computedExpanded"
      />
    </template>
    

道具

这个 JsonViewer 组件提供几种定制道具:

Prop类型默认说明
data对象{}JSON数据要发布.
expanded布尔true默认是否扩展所有对象/阵列 .
darkMode布尔false为 JSON 查看器启用暗模式 .
level数目0开始渲染 JSON 对象的深度级别 .

方法

您可以使用您 Vue 组件中的方法来动态控制查看器 :

  • toggleDarkMode:在光和暗的主题之间切换.
  • toggleExpanded: 展开或崩溃所有对象/阵列.

示例 JSON 数据结构

以下是JSON数据类型的例子,你可以使用 JsonViewer 组件 :

const jsonData = {
  name: 'John Doe',
  age: 30,
  isActive: true,
  isVerified: false,
  hobbies: ['reading', 'traveling', 'swimming', 'coding'],
  items: [
    {
      property1: 'value',
      property2: 'value2',
      property3: 'value3',
    },
    {
      property1: 'value',
      property2: 'value2',
      property3: 'value3',
    },
  ],
  address: {
    street: '123 Main St',
    city: 'New York',
    state: 'NY',
    zipCode: '10001',
    coordinates: {
      latitude: 40.7128,
      longitude: -74.006,
    },
  },
  mixedArray: [1, 2, 3, 'test', { property: 'value' }],
  temperature: -2.757,
  currentDate: new Date(),
  regexPattern: /[0-9]/gi,
  formattedDate: Moment().format('YYYY-MM-DD'),
  emptyObj: {},
  emptyArr: [],
  emptyStr: '',
  zeroValue: 0,
  nullValue: null,
  undefinedValue: undefined,
  deepNestedObject: {
    level1: {
      level2: {
        level3: {
          level4: {
            level5: {
              deepKey: 'deep value',
            },
          },
        },
      },
    },
  },
  sampleFunction: function () {
    return 'This is a function';
  },
};

演示

现场演示,看看 vercel上的例子 或探索演示 src/App.vue 数据库.

类型脚本支持

这个 JsonViewer 组件已全部输入,从而更容易在 TypeScript 项目中工作.

在您的 Vue 3 应用程序中享受无缝和可定制的 JSON 浏览体验 @anilkumarthakur/vue3-json-viewer

版本与发布记录

@anilkumarthakur/vue3-json-viewer 共发布 20 个版本,首次发布于 2024/10/23;过去 12 个月发布了 5 个版本。

版本发布日期距今
0.6.0latest2026/07/163 个月前
0.5.12026/04/047 个月前
0.5.02026/04/037 个月前
0.4.12026/01/189 个月前
0.4.02026/01/189 个月前
0.3.02025/07/131.3 年前

关于 @anilkumarthakur/vue3-json-viewer 的常见问题

@anilkumarthakur/vue3-json-viewer 是什么?

一个美丽的,自定义的JSON取景器组件,用于Vue 3,有TypeScript支持,暗/光模式,扩展/拼接控制,和语法突出化.

如何安装 @anilkumarthakur/vue3-json-viewer?

在项目目录运行 npm install @anilkumarthakur/vue3-json-viewer,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:vue(^3.3.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@anilkumarthakur/vue3-json-viewer 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@anilkumarthakur/vue3-json-viewer 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@anilkumarthakur/vue3-json-viewer 可以商用吗?

@anilkumarthakur/vue3-json-viewer 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@anilkumarthakur/vue3-json-viewer 的下载量有多少?

根据 npm 官方下载统计,@anilkumarthakur/vue3-json-viewer 在 2026/10/06 – 2026/11/04 这 30 天内被下载 2,760 次,日均约 92 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@anilkumarthakur/vue3-json-viewer 还在维护吗?

最新版本 0.6.0 发布于 2026/07/16(3 个月前);至今共发布 20 个版本,其中过去 12 个月发布了 5 个;首次发布于 2024/10/23。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。