当前位置: 首页 > news >正文

vue3 使用JsMind的方法,以及引入提示报错,无法找到模块“jsmind”的声明文件

最终结果:

一、使用:使用yarn或者npm 安装

 yarn add jsmind
npm install vue-jsmind

二、引入

两种方法:(如果这样引入没问题按照这样引入)

import "jsmind/style/jsmind.css";
import JsMind from "jsmind/js-legacy/jsmind.js";

另一种引入:

import "jsmind/style/jsmind.css";
import JsMind from "jsmind";

可能遇到的问题:无法找到模块“jsmind”的声明文件

解决办法(在src同级目录下,找到vite-env.d.ts文件,如果这样改了,上面文件引入方式必须按照第二种方法引入,目前本人使用0.8.5版本):

测试案例:

<template><div style="width: 100%; height: 200px" ref="jsmindContainer"></div>
</template><script setup lang="ts">
import { ref, onMounted } from "vue";
import "jsmind/style/jsmind.css";
import JsMind from "jsmind";const jsmindContainer = ref<HTMLDivElement | null>(null);
let jm: any = null;onMounted(() => {if (jsmindContainer.value) {console.log("jsmindContainer:", jsmindContainer.value); // Check jsmindContainer value// Initialize jsMindjm = new JsMind({container: jsmindContainer.value, //渲染的体editable: false, //是否可以编辑// theme: "red",//主题色enable_drag_and_drop: false, // 禁用节点的拖拽(包括折叠功能)view: {draggable: false,   // 当容器不能完全容纳思维导图时,是否允许拖动画布代替鼠标滚动line_style: "curved", /// 思维导图线条的样式,直线(straight)或者曲线(curved)},layout: {pspace: 0, // 节点与连接线之间的水平间距(用于容纳节点收缩/展开控制器)},// default_event_handle: {//   select_node: (node: any) => {//     console.log("Selected node:", node);//   },// },});// Define the mind map dataconst mind = {meta: {name: "Example",},format: "node_array",data: [{ id: "root", isroot: true, topic: "Main Topic" },{ id: "sub1", parentid: "root", topic: "Subtopic 1" },{ id: "sub2", parentid: "root", topic: "Subtopic 2" },{ id: "sub3", parentid: "sub1", topic: "sob 2" },{ id: "sub4", parentid: "sub1", topic: "sob 3" },],};console.log("Mind map data:", mind); // Check mind map data before showing// Show the mind mapjm.show(mind);} else {console.error("jsmindContainer is null"); // Log an error if jsmindContainer is null}
});
</script><style lang="less">
/* Optional styles */
/* 隐藏所有节点的折叠图标 */
jmexpander {display: none !important;
}
jmnode {border: 1px solid #666;
}
</style>

样式配置和配置项说明:

var options = {container:'jsmind_container', // [必选] 容器的IDeditable:true,                // [可选] 是否启用编辑theme:'orange'                // [可选] 主题
};
var jm = new jsMind(options);
options = {container : '',         // [必选] 容器的IDeditable : false,       // 是否启用编辑theme : null,           // 主题mode :'full',           // 布局模式support_html : true,    // 是否支持节点里的HTML元素log_level: 'info',      // 日志级别view:{engine: 'canvas',   // 思维导图各节点之间线条的绘制引擎hmargin:100,        // 思维导图距容器外框的最小水平距离vmargin:50,         // 思维导图距容器外框的最小垂直距离line_width:2,       // 思维导图线条的粗细line_color:'#555',  // 思维导图线条的颜色line_style:'curved',// 思维导图线条的样式,直线(straight)或者曲线(curved)custom_line_render: null,  // 自定义的线条渲染方法draggable: false,   // 当容器不能完全容纳思维导图时,是否允许拖动画布代替鼠标滚动hide_scrollbars_when_draggable: false, // 当设置 draggable = true 时,是否隐藏滚动条node_overflow: 'hidden', // 节点文本过长时的样式zoom: {             // 配置缩放min: 0.5,       // 最小的缩放比例max: 2.1,       // 最大的缩放比例step: 0.1,      // 缩放比例间隔},custom_node_render: null, // 自定义的节点渲染方法},layout:{hspace:30,          // 节点之间的水平间距vspace:20,          // 节点之间的垂直间距pspace:13,          // 节点与连接线之间的水平间距(用于容纳节点收缩/展开控制器)cousin_space:0      // 相邻节点的子节点之间的额外的垂直间距},shortcut:{enable:true,        // 是否启用快捷键handles:{},         // 命名的快捷键事件处理器mapping:{           // 快捷键映射addchild   : [45, 4096+13], 	// <Insert>, <Ctrl> + <Enter>addbrother : 13,    // <Enter>editnode   : 113,   // <F2>delnode    : 46,    // <Delete>toggle     : 32,    // <Space>left       : 37,    // <Left>up         : 38,    // <Up>right      : 39,    // <Right>down       : 40,    // <Down>}},
};

http://www.lryc.cn/news/383951.html

相关文章:

  • 狗都能看懂的DBSCAN算法详解
  • 运维岗高危操作
  • 【ajax基础02】URL详解
  • MySQL 7种Join的定义图解示范结果(所有join类型)
  • 在 Oracle Linux 8.9 上安装 FFmpeg 的完整指南
  • python爬虫之实现edge无头浏览器和规避检测
  • 每天一个数据分析题(三百八十七)- 线性回归分析
  • Perl中的eval块:深入解析与应用
  • 分享AI学习笔记之Python
  • 多版本GCC安装及切换
  • Redis进阶 - 朝生暮死之Redis过期策略
  • MySQL实训--原神数据库
  • Retrieval-Augmented Generation for Large Language Models A Survey
  • 【曦灵平台】深度体验百度智能云曦灵平台之数字人3.0、声音克隆、直播等功能,AI加持就是不一样,快来一起体验
  • 如何使用GPT?初学者的指南
  • 24年了 直播带货的未来如何?
  • 【神经网络】深入理解多层神经网络(深度神经网络
  • CAS原理与JUC原子类
  • 【杂记-浅谈OSPF协议之RouterDeadInterval死区间隔】
  • 【每日刷题】Day75
  • 文件管理器加载缓慢-禁用文件类型自动发现功能
  • .[nicetomeetyou@onionmail.org].faust深入剖析勒索病毒及防范策略
  • Ardupilot开源代码之ExpressLRS性能实测方法
  • Transformers是SSMs:通过结构化状态空间对偶性的广义模型和高效算法(二)
  • Segment any Text:优质文本分割是高质量RAG的必由之路
  • IDEA 学习之 编译内存问题
  • 如何将本地项目推送到gitee仓库
  • 产品经理基础入门
  • 五子棋纯python手写,需要的拿去
  • C# Winform按钮避免重复点击以及解决WinForm中设置Enabled=False为什么还会响应Click事件