Neo4j+Neovis+Vue3:前端连接数据库渲染

Neovis(github):https://github.com/neo4j-contrib/neovis.js

Neovis配置文档:neovis.js (neo4j-contrib.github.io)

一、安装Neo4j

参考文章:neo4j下载安装配置步骤-CSDN博客

二、Neovis使用

1.npm引入
复制代码
?npm install --save neovis.js
2.挂载节点及配置
复制代码
?<template>
? ?<div class="title">可视化知识图谱</div>
? ?<div class="neo-box">
? ? ?<div ref="viz" id="viz" style="width: 100%; height: 100%"></div>
? ?</div>
?</template>
??
?<script setup>
?import NeoVis from "neovis.js/dist/neovis.js";
?import { onMounted, ref } from "vue";
?const config = ref({
? ?containerId: "viz",
? ?neo4j: {
? ? ?serverUrl: "bolt://localhost:7687",
? ? ?serverUser: "neo4j",
? ? ?serverPassword: "12345679",
?  },
? ?labels: {
? ? ?Author: {label: "name",},
? ? ?Dynasty: { label: "name" },
? ? ?Poem: { label: "name" },
?  },
? ?relationships: {},
? ?initialCypher: "MATCH (n)-[r]->(m) RETURN n, r, m", //查询语句
?});
??
?onMounted(() => {
? ?const vis = new NeoVis(config.value);
? ?vis.render();
?});
?</script>

最终效果图:鼠标滚动放大,节点可拖拽

三、踩坑经历

1.查询节点

查询语句MATCH (n) return n返回的只有节点,不显示关系

复制代码
?initialCypher: "MATCH (n) return n"

使用以下语句查询关系

复制代码
?initialCypher: "MATCH (n)-[r]->(m) RETURN n, r, m"
2.配置项不需要打引号""

参考有些文章对labels的配置里的字段加了双引号"",配置不需要双引号,而且prettier会报错。。。

错误配置:

复制代码
?labels: {
? ?"节点标签": {
? ? ?"label": "显示的节点属性",
? ? ?......
?  }
?}

正确配置:

复制代码
?labels: {
? ?节点标签: {
? ? ?label: "显示的节点属性",
? ? ?......
?  }
?}
相关推荐
xiaogai_gai1 小时前
仅查询策略实战:从金蝶云·星空旗舰版定时拉取收料通知单
大数据·数据库·python
数据工匠老o2 小时前
异构数据库DDL同步:260条链路的结构变更自动适配方案
数据库·架构
程序员老赵2 小时前
Docker 部署青龙面板:轻松搭建定时任务管理平台
前端·docker·开源
Swot2 小时前
Asciidoctor 公式数字下标错位问题:原因分析与解决方案
前端
Swot2 小时前
leo-editor 中将 Markdown 内容转成 asciidoc 格式
前端
狒狒AI2 小时前
Remotion / GSAP+Three / HyperFrames / Skia 四栈实测:代码渲染知识视频的选栈方法(附开源技能)
前端·人工智能·aigc
修炼的dance2 小时前
浏览器里导出H.265,8.5秒和55.5秒差在硬件
前端
补码缩写2 小时前
WebCodecs选编码器,探测之后还要验解码和播放
前端
大文说跨境2 小时前
亚马逊多账号管理浏览器怎么选?云登/紫鸟/AdsPower 对比
java·前端·自动化
hunter_0762 小时前
iOS 首页复杂嵌套滚动技术方案:头部固定 + 网格滚动 + Tab 吸顶 + 每 Tab 独立下拉刷新
前端