百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

不会前端编程也能做网页一款强大的低代码可视化 H5 搭建平台

myzbx 2025-03-26 14:26 74 浏览

这次介绍的这款开源项目很适合当前网风下,只想鼠标点点点,就完成很多事情(包括开发)的现实。这款开源的产品叫作“H5-Dooring”。

项目的官网是:
https://github.com/MrXujiang/h5-Dooring

关于该产品的介绍,项目的readme是这样描述的:

H5-Dooring是一款功能强大,专业可靠的H5可视化页面配置解决方案,致力于提供一套简单方便、专业可靠、无限可能的H5落地页最佳实践。技术栈以react和typescript为主, 后台采用nodejs开发, 正在探索h5-lowcode解决方案。

下面是我自己的部署步骤,使用的系统是ubuntu24.04

一、安装nodejs和npm

这些服务虽然在线仓库中都有,但是版本都比较旧,已经无法使用过程的npm仓库源了。采用官方的nvm办法进行安装,并指定到20的长期支持版。

先安装nvm这个nodejs的管理工具。

demouser@demohosts:~$ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.0/install.sh | bash
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 16555  100 16555    0     0  28262      0 --:--:-- --:--:-- --:--:-- 28250
=> Downloading nvm from git to '/home/demouser/.nvm'
=> 正克隆到 '/home/demouser/.nvm'...
remote: Enumerating objects: 378, done.
remote: Counting objects: 100% (378/378), done.
remote: Compressing objects: 100% (326/326), done.
remote: Total 378 (delta 43), reused 163 (delta 25), pack-reused 0 (from 0)
接收对象中: 100% (378/378), 375.87 KiB | 1.74 MiB/s, 完成.
处理 delta 中: 100% (43/43), 完成.
* (头指针在 FETCH_HEAD 分离)
  master
=> Compressing and cleaning up git repository

=> Appending nvm source string to /home/demouser/.bashrc
=> Appending bash_completion source string to /home/demouser/.bashrc
=> Close and reopen your terminal to start using nvm or run the following to use it now:

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion

安装完成后,如果提示没有nvm命令,就重启一下服务器。

使用下面的命令进行安装:

demouser@demohosts:~$ nvm install 20
Downloading and installing node v20.18.0...
Downloading https://nodejs.org/dist/v20.18.0/node-v20.18.0-linux-x64.tar.xz...
######################################################################### 100.0%
Computing checksum with sha256sum
Checksums matched!
Now using node v20.18.0 (npm v10.8.2)
Creating default alias: default -> 20 (-> v20.18.0)
demouser@demohosts:~$ node -v
v20.18.0
demouser@demohosts:~$ npm -v
10.8.2

设置国内的npm镜像源

demouser@demohosts:~$ npm config set registry https://registry.npmmirror.com

使用npm安装yarn

demouser@demohosts:~$ npm install -g yarn

added 1 package in 2s

二、拉取项目代码

进入创建一个目录并进入该目录,咱们拉取的代码将放在这个目录里面

demouser@demohosts:~$ sudo mkdir /web
demouser@demohosts:~$ sudo chmod -R 777 /web
demouser@demohosts:~$ cd /web

从github上把本项目的代码拉取到本地

demouser@demohosts:/web$ git clone https://github.com/MrXujiang/h5-Dooring.git
正克隆到 'h5-Dooring'...
remote: Enumerating objects: 5833, done.
remote: Counting objects: 100% (336/336), done.
remote: Compressing objects: 100% (270/270), done.
remote: Total 5833 (delta 69), reused 294 (delta 59), pack-reused 5497 (from 1)
接收对象中: 100% (5833/5833), 50.92 MiB | 15.92 MiB/s, 完成.
处理 delta 中: 100% (3231/3231), 完成.

查看是否已经下载完成,下载完成的内容会如下:

demouser@demohosts:/web$ ls
h5-Dooring
demouser@demohosts:/web$ cd h5-Dooring/
demouser@demohosts:/web/h5-Dooring$ ls
CHANGELOG.md  doc         LICENSE            package.json       public     SECURITY.md  src            webpack.config.js  yarn.lock
code.png      Dockerfile  logo.ff7fc6bb.png  package-lock.json  readme.md  server.js    tsconfig.json  website            zh.md
demouser@demohosts:/web/h5-Dooring$ 

三、安装并运行项目

进入到项目的目录中,执行下面的命令安装依赖关系

demouser@demohosts:/web$ cd h5-Dooring/

demouser@demohosts:/web/h5-Dooring$ yarn install
yarn install v1.22.22
warning package-lock.json found. Your project contains lock files generated by tools other than Yarn. It is advised not to mix package managers in order to avoid resolution inconsistencies caused by unsynchronized lock files. To clear this warning, remove package-lock.json.
[1/4] Resolving packages...
warning @visactor/vchart > @visactor/vdataset > geobuf > shapefile > text-encoding@0.6.4: no longer maintained
[2/4] Fetching packages...
warning url-loader@1.1.2: Invalid bin field for "url-loader".
[3/4] Linking dependencies...
warning "@umijs/plugin-esbuild > esbuild-webpack-plugin@1.0.5" has unmet peer dependency "webpack@^4.0.0".
warning "@umijs/plugin-sass > sass-loader@8.0.2" has unmet peer dependency "webpack@^4.36.0 || ^5.0.0".
warning "@umijs/preset-react > @umijs/plugin-layout@0.12.2" has unmet peer dependency "@ant-design/pro-layout@^5.0.0".
warning "@umijs/preset-react > @umijs/plugin-dva > babel-plugin-dva-hmr@0.4.2" has unmet peer dependency "redbox-react@1.x".
warning "@umijs/preset-react > @umijs/plugin-dva > dva-loading@3.0.21" has unmet peer dependency "dva-core@^1.1.0 | ^1.5.0-0 | ^1.6.0-0".
warning "@umijs/preset-react > @umijs/plugin-dva > dva > connected-react-router@6.5.2" has unmet peer dependency "react-router@^4.3.1 || ^5.0.0".
warning " > antd-img-crop@3.12.0" has unmet peer dependency "prop-types@^15.6.2".
warning "zarm > create-react-context@0.2.3" has unmet peer dependency "prop-types@^15.0.0".
warning " > eslint-config-react-app@5.2.1" has incorrect peer dependency "@typescript-eslint/eslint-plugin@2.x".
warning " > eslint-config-react-app@5.2.1" has incorrect peer dependency "@typescript-eslint/parser@2.x".
warning " > sass-loader@9.0.3" has unmet peer dependency "webpack@^4.36.0 || ^5.0.0".
[4/4] Building fresh packages...
success Saved lockfile.
$ umi generate tmp
Done in 176.19s.

启动项目

demouser@demohosts:/web/h5-Dooring$ yarn start
yarn run v1.22.22
$ export NODE_OPTIONS=--openssl-legacy-provider && umi dev -- editor
Starting the development server...


 Webpack
  Compiled successfully in 1.66m

Browserslist: caniuse-lite is outdated. Please run:
npx browserslist@latest --update-db

Why you should do it regularly:
https://github.com/browserslist/browserslist#browsers-data-updating
[BABEL] Note: The code generator has deoptimised the styling of /web/h5-Dooring/node_modules/xlsx/xlsx.js as it exceeds the max of 500KB.
 DONE  Compiled successfully in 99625ms                                                                     19:54:42


  App running at:
  - Local:   http://localhost:8000 (copied to clipboard)
  - Network: http://192.168.10.144:8000

四、测试项目

在远程浏览器中输入 http://服务器IP+8000端口,就可以访问到H5搭建平台了。




相关推荐

vue 基础-组件中事件的触发和监听

前言《vue基础》系列是再次回炉vue记的笔记,除了官网那部分知识点外,还会加入自己的一些理解。(里面会有部分和官网相同的文案,有经验的同学择感兴趣的阅读)vue中单纯的事件调用,你一定不陌生...

JMH基准测试和JMH-Visual-chart可视化

原文地址:https://github.com/Sayi/sayi.github.com/issues/68如何度量一段代码的性能,换种实现方式会有更佳的性能表现吗?你或许想知道fastjson是否正...

一文轻松看懂丰田汽车的电路图(丰田车电路图识读技巧)

丰田汽车电路图符号、含义丰田汽车电路图识读说明电路图中字母是注释标号,其各部分的含义如下:注释标号A:表示系统标题,在电路图上方用横线划分,区域内用文字和系统符号表示下方电路系统的名称。注释标号B:表...

杭州高级中学发文言文版校庆公告引热议——全文932字,74处注释

阅读提示校方回应:我们期待以这种‘复古’的方式引起公众注意,也算是为树立起大众的文化自信、唤起大众对传统文化的关注作出一点贡献。5月14日,杭州高级中学官方微信发布了一篇文言文版的校庆公告。几个小...

Python 和 JS 有什么相似?(python和js哪个快)

Python是一门运用很广泛的语言,自动化脚本、爬虫,甚至在深度学习领域也都有Python的身影。作为一名前端开发者,也了解ES6中的很多特性借鉴自Python(比如默认参数、解构赋值、...

阿里卖家 Flutter for Web 工程实践

作者:马坤乐(坤吾)Flutter自2015年初次亮相以来,经过了多年的发展已经相当成熟,在阿里、美团、拼多多等互联网公司都有广泛的应用。在ICBU阿里卖家上90+%的新业务使用Flu...

诗经275思文押韵、注释、古音、今韵

诗经275-1思文押韵(备注:□=非韵、■=i韵、●=o/u韵、◆=ng韵、=i/o二象性)「」1.思文后稷,克配彼天。立我烝民,莫菲尔极。贻我来牟,帝命率育。无此疆尔界,陈常于时夏。□□□■,...

SolidWorks中常用命令快捷键(solidworks有哪些快捷键)

1.A:中心线2.B:镜向3.C:画圆4.D:智能标柱尺寸5.E:删除6.F:草图倒圆角7.G:画直线8.H:从装配制作工程9.I:等距实体10.J:从装配制作装配11.K:多边形12.L:延伸13....

第一章、TS语言简介(tsl语言)

TypeScript(简称TS)是微软公司开发的一种基于JavaScript(简称JS)语言的编程语言。它的目的并不是创造一种全新语言,而是增强JavaScript的功能,使其更适合多人合...

为什么要用JMH?何时应该用?(日本jmh地面分析图网站)

if快还是switch快?HashMap的初始化size要不要指定,指定之后性能可以提高多少?各种序列化方法哪个耗时更短?无论出自何种原因需要进行性能评估,量化指标总是必要的。在大部分场合...

雅虎“YSlow - 23 条规则”详尽阐释

以下乃是雅虎“YSlow-23条规则”的详尽阐释,旨在优化网页之性能以及用户之体验,乃是结合技术之原理与实践之方法梳理而成:1.减少HTTP请求次数说明:每一次HTTP请求皆会增添延迟...

JavaScript 运算符(js ~运算符)

JavaScript运算符JS变量JS算数JavaScript运算符实例向变量赋值,并把它们相加:varx=7;//向x赋值5vary=8;//向y赋值2...

在Notebook中使用Sublime Text 快捷键

编程派微信号:codingpy前几天,我在公众号上发布了两篇译文,对JupyterNotebook做了一些基础性的介绍。虽然说比较基础,而且第二篇阅读量并不高,但是我认为对于其他对于Noteb...

晨光静好时!2 道 JS 与 TS 面试题解析,开启惬意学习日

当第一缕晨光温柔地唤醒窗台的绿植,泡上一杯清香四溢的茉莉花茶,坐在洒满阳光的角落。此刻,放下对面试的焦虑,让我们像聊生活趣事般,轻松拆解两道JavaScript和TypeScript的高频面试...

2024年CSPJ题目解析,语法基本功>算法!

前言:每次有家长来找我们咨询报课,说孩子学了一年了,竞赛成绩不理想,问怎么才能强化,提升,我们经过一番询问,发现这类孩子普遍都是在算法上已经花了非常多的时间了,但是语法根本不过关。对这种孩子我们普遍建...