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

科普网站建设方案广告公司联系方式

科普网站建设方案,广告公司联系方式,专业的南京网站建设,云南网站建设选天软概述 Excalidraw是一个非常好用的画图板工具,但是是用React写的,本文分享一种在Vue项目中使用的方法。 效果 实现 Excalidraw简介 这篇文章(Excalidraw 完美的绘图工具:https://zhuanlan.zhihu.com/p/684940131)介绍的很全面,…

概述

Excalidraw是一个非常好用的画图板工具,但是是用React写的,本文分享一种在Vue项目中使用的方法。

效果

image.png

image.png

实现

Excalidraw简介

这篇文章(Excalidraw 完美的绘图工具:https://zhuanlan.zhihu.com/p/684940131)介绍的很全面,大家移步可以过去看看。

使用

  • 官方文档:https://docs.excalidraw.com/docs

1. 引入依赖

npm install react react-dom @excalidraw/excalidraw
# 或
yarn add react react-dom @excalidraw/excalidraw

2.添加配置

修改vite.config.js,添加如下配置:

export default defineConfig({...,define: {'process.env': {}},
})

3.页面使用

在Vue文件中的使用方式如下:

<template><div class="container"><div class="header">LZUGIS<button style="float: right" @click="save">Save</button></div><div class="excalidraw" id="excalidraw"></div><div class="footer">@lzugis 2024</div></div>
</template><script>
import { createRoot } from "react-dom/client";
import React from "react";
import { Excalidraw } from "@excalidraw/excalidraw";let root = null,app = null;export default {data() {return {};},mounted() {root = createRoot(document.getElementById("excalidraw"));const elements = JSON.parse(localStorage.getItem("excalidraw-elements"));const libs = JSON.parse(localStorage.getItem("excalidraw-libs"));const state = JSON.parse(localStorage.getItem("excalidraw-state"));const {theme,activeTool,name,scrollX,scrollY,zoom,offsetLeftm,offsetTop,} = state;root.render(React.createElement(Excalidraw, {name: "我的画板",initialData: {elements: elements,libraryItems: libs,appState: {theme,activeTool,name,scrollX,scrollY,zoom,offsetLeftm,offsetTop,},},langCode: "zh-CN",onChange: this.onChange,onLibraryChange: this.onLibraryChange,excalidrawAPI: this.excalidrawAPI,// props}));},unmounted() {root.unmount();},methods: {save() {if (app) {localStorage.setItem("excalidraw-state",JSON.stringify(app.getAppState()));localStorage.setItem("excalidraw-elements",JSON.stringify(app.getSceneElements()));}},onChange(e) {localStorage.setItem("excalidraw-elements", JSON.stringify(e));},onLibraryChange(e) {localStorage.setItem("excalidraw-libs", JSON.stringify(e));},excalidrawAPI(e) {app = e;window.app = e;},},
};
</script><style scoped lang="scss">
.container {width: 100%;height: 100vh;overflow: hidden;display: flex;flex-direction: column;.header {height: 3rem;line-height: 3rem;padding: 0 1rem;font-size: 1.2rem;background-color: #038fe5;color: white;}.footer {height: 2rem;line-height: 2rem;text-align: center;background-color: #038fe5;color: white;}.excalidraw {flex-grow: 1;}
}
</style>
http://www.zhongyajixie.com/news/60253.html

相关文章:

  • 湖南省网站企业文化宣传策划方案
  • 南昌网站开发培训中心阿里指数在线查询
  • 企业英文网站制作百度推广方式
  • 贵阳设计网站建设网站关键词有哪些
  • 织梦博客网站模板下载佛山网站建设模板
  • 医疗网站女性专题网页设计模板河南疫情最新情况
  • 网络营销是什么工作职位贵阳关键词优化平台
  • 网站搜索框怎么做恶意点击软件哪个好
  • 创建平台seo云优化如何
  • 江西网站建设哪家专业网站推广是什么意思
  • 网站开发 怎样做费用结算墨子学院seo
  • 个人网站做博客还是做论坛山东百度推广代理商
  • 如何做财经网站新余seo
  • flash做游戏下载网站福州百度网站排名优化
  • 四川外国语大学网站建设系提高百度快速排名
  • 深圳做网站推广西地那非片说明书
  • 动漫制作专业可以专升本吗willfast优化工具下载
  • 淄博市建设局网站百度快照优化排名推广
  • http当网站怎么做微信朋友圈推广
  • 百度云虚拟主机汉中网站seo
  • 搜索引擎免费下载深圳seo关键词优化外包公司
  • 1级a做爰免费网站b2b网站
  • 网易企业邮箱怎么申请建站 seo课程
  • 营销型网站推广服务电商运营多少钱一个月
  • 微信公众号做推送的网站网址域名ip查询
  • 求职简历在哪个网站做海外推广是做什么的
  • 什么是网站前台静态化官网设计比较好看的网站
  • 清河做网站哪家便宜视频剪辑培训班一般学费多少
  • seo chinazseo咨询邵阳
  • 南宁伯才网络建站如何最新搜索引擎排名