🆕 添加dooring文档

This commit is contained in:
RalapChen 2021-01-17 19:12:02 +08:00
parent 48b3b9ec5c
commit a9aaff45c2
37 changed files with 25893 additions and 12 deletions

9
.vscode/settings.json vendored Normal file
View File

@ -0,0 +1,9 @@
{
"workbench.colorCustomizations": {
"activityBar.background": "#152B60",
"titleBar.activeBackground": "#1D3C86",
"titleBar.activeForeground": "#FBFCFE"
},
"editor.snippetSuggestions": "bottom",
"editor.suggest.snippetsPreventQuickSuggestions": false
}

142
doc/.vuepress/config.js Executable file
View File

@ -0,0 +1,142 @@
/*
* @Author: smallalso<hu141418@gmail.com>
* @Date: 2020-12-08 18:33:27
* @LastEditors: smallalso<hu141418@gmail.com>
* @LastEditTime: 2020-12-18 16:46:50
* @FilePath: /his-doc/docs/.vuepress/config.js
*/
// const sidebar = require('./utils/gen-sidebar')()
// const navConf = require("./nav.conf.json.js.js");
const isDev = process.env.NODE_ENV === 'development';
// console.log(process.env.NODE_ENV === 'development', 888)
module.exports = {
base: '/',
title: 'dooring',
head: [['link', { rel: 'icon', href: '/favicon.ico' }]],
// themeConfig: {
// nav: navConf,
// sidebarDepth: 3,
// lastUpdated: "Last Updated",
// repo: "winning-finance/his-doc",
// repoLabel: "查看源码",
// },
dest: './dist',
themeConfig: {
search: false,
searchMaxSuggestions: 10,
lastUpdated: 'Last Updated',
nav: [
{ text: '体验', link: '/' },
{ text: '文档', link: '/zh/guide/' },
{ text: '1.X', link: '/zh/guide/1' },
{ text: '语言', link: '/zh/guide/2' },
{ text: 'github', link: 'https://github.com/MrXujiang/h5-Dooring' },
],
sidebar: [
{
title: '基本介绍', // 必要的
path: '/zh/guide/', // 可选的/, 标题的跳转链接,应为绝对路径且必须存在
collapsable: false, // 可选的, 默认值是 true,
sidebarDepth: 1, // 可选的, 默认值是 1
},
{
title: 'doring如何工作', // 必要的
path: '/zh/guide/introduced', // 可选的/, 标题的跳转链接,应为绝对路径且必须存在
collapsable: false, // 可选的, 默认值是 true,
sidebarDepth: 1, // 可选的, 默认值是 1
},
{
title: '快速上手', // 必要的
path: '/zh/guide/startedQuickly', // 可选的/, 标题的跳转链接,应为绝对路径且必须存在
collapsable: false, // 可选的, 默认值是 true,
sidebarDepth: 1, // 可选的, 默认值是 1
},
{
title: '目录结构', // 必要的
path: '/zh/guide/directoryStructure', // 可选的/, 标题的跳转链接,应为绝对路径且必须存在
collapsable: false, // 可选的, 默认值是 true,
sidebarDepth: 1, // 可选的, 默认值是 1
},
{
title: '组件开发', // 必要的
collapsable: false, // 可选的, 默认值是 true,
sidebarDepth: 1, // 可选的, 默认值是 1
type: 'group',
children: [
{
name: 'componentStructure',
title: '组件结构', // 必要的
path: '/zh/guide/componentDev/componentStructure', // 可选的/, 标题的跳转链接,应为绝对路径且必须存在
collapsable: false, // 可选的, 默认值是 true,
sidebarDepth: 2, // 可选的, 默认值是 1
},
{
name: 'DSLAnalysis',
title: 'DSL设计', // 必要的
path: '/zh/guide/componentDev/DSLAnalysis', // 可选的/, 标题的跳转链接,应为绝对路径且必须存在
collapsable: false, // 可选的, 默认值是 true,
sidebarDepth: 2, // 可选的, 默认值是 1
},
{
name: 'dynamicLoading',
title: '动态加载', // 必要的
path: '/zh/guide/componentDev/dynamicLoading', // 可选的/, 标题的跳转链接,应为绝对路径且必须存在
collapsable: false, // 可选的, 默认值是 true,
sidebarDepth: 1, // 可选的, 默认值是 1
},
],
},
{
title: '功能实现', // 必要的
collapsable: false, // 可选的, 默认值是 true,
sidebarDepth: 1, // 可选的, 默认值是 1
type: 'group',
children: [
{
title: '模板库', // 必要的
path: '/zh/guide/functionRealization/templateLibrary', // 可选的/, 标题的跳转链接,应为绝对路径且必须存在
collapsable: false, // 可选的, 默认值是 true,
sidebarDepth: 1, // 可选的, 默认值是 1
},
{
title: '保存json', // 必要的
path: '/zh/guide/functionRealization/saveJson', // 可选的/, 标题的跳转链接,应为绝对路径且必须存在
collapsable: false, // 可选的, 默认值是 true,
sidebarDepth: 1, // 可选的, 默认值是 1
},
{
title: '导入json生成页面', // 必要的
path: '/zh/guide/functionRealization/generatePagesByJson', // 可选的/, 标题的跳转链接,应为绝对路径且必须存在
collapsable: false, // 可选的, 默认值是 true,
sidebarDepth: 1, // 可选的, 默认值是 1
},
{
title: '网页预览', // 必要的
path: '/zh/guide/functionRealization/pagePreview', // 可选的/, 标题的跳转链接,应为绝对路径且必须存在
collapsable: false, // 可选的, 默认值是 true,
sidebarDepth: 1, // 可选的, 默认值是 1
},
{
title: '真机预览', // 必要的
path: '/zh/guide/functionRealization/machinePreview', // 可选的/, 标题的跳转链接,应为绝对路径且必须存在
collapsable: false, // 可选的, 默认值是 true,
sidebarDepth: 1, // 可选的, 默认值是 1
},
{
title: '撤销/重做', // 必要的
path: '/zh/guide/functionRealization/revocation', // 可选的/, 标题的跳转链接,应为绝对路径且必须存在
collapsable: false, // 可选的, 默认值是 true,
sidebarDepth: 1, // 可选的, 默认值是 1
},
{
title: '截图功能', // 必要的
path: '/zh/guide/functionRealization/screenshot', // 可选的/, 标题的跳转链接,应为绝对路径且必须存在
collapsable: false, // 可选的, 默认值是 true,
sidebarDepth: 1, // 可选的, 默认值是 1
},
],
},
],
},
};

9
doc/.vuepress/nav.conf.json Executable file
View File

@ -0,0 +1,9 @@
[
{
"text": "指南",
"link": "/guide/",
"sort": ["index", "quick-start", "introduction", "config", "api", "issues"]
},
{ "text": "工具", "link": "/tool/" },
{ "text": "规范", "link": "/standard/" }
]

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.7 KiB

BIN
doc/.vuepress/public/favicon.ico Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 141 B

View File

@ -0,0 +1,27 @@
<!--
* @Author: smallalso<hu141418@gmail.com>
* @Date: 2020-12-17 10:10:58
* @LastEditors: smallalso<hu141418@gmail.com>
* @LastEditTime: 2020-12-17 11:12:18
* @FilePath: /his-doc/docs/.vuepress/templates/dev.html
-->
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width,initial-scale=1.0" />
<link rel="icon" href="./favicon.png" rel="shortcut icon" type="image/vnd.microsoft.icon" />
<title>dooring-前端开发手册</title>
</head>
<body>
<noscript>
<strong
>We're sorry but winning-components doesn't work properly without JavaScript
enabled. Please enable it to continue.</strong
>
</noscript>
<div id="app"></div>
<!-- built files will be auto injected -->
</body>
</html>

View File

@ -0,0 +1,27 @@
/*
* @Author: smallalso<hu141418@gmail.com>
* @Date: 2020-11-16 11:07:22
* @LastEditors: smallalso<hu141418@gmail.com>
* @LastEditTime: 2020-12-15 17:46:54
* @FilePath: /his-doc/docs/.vuepress/theme/enhanceApp.js
*/
import './styles/main.scss';
// 使用异步函数也是可以的
export default ({
Vue, // VuePress 正在使用的 Vue 构造函数
options, // 附加到根实例的一些选项
router, // 当前应用的路由实例
siteData, // 站点元数据
isServer, // 当前应用配置是处于 服务端渲染 或 客户端
}) => {
// ...做一些其他的应用级别的优化
// console.log({ Vue, options, router, siteData, isServer });
Vue.config.ignoredElements = [
// Use a `RegExp` to ignore all elements that start with "nova-"
// 2.5+ only
//^nova-/,
// /img/,
];
};

View File

@ -0,0 +1,172 @@
<template>
<main class="home" :aria-labelledby="data.heroText !== null ? 'main-title' : null">
<header class="hero">
<h1 v-if="data.heroText !== null" id="main-title">
<img src="../imgs/common/logo.svg" :alt="data.heroAlt || 'hero'" /><span>{{
data.heroText || $title || "Hello"
}}</span>
</h1>
</header>
<div v-if="data.features && data.features.length" class="features">
<div class="container">
<div v-for="(feature, index) in data.features" :key="index" class="feature">
<div class="feature-index">{{ index + 1 }}</div>
<h2>{{ feature.title }}</h2>
<p>{{ feature.details }}</p>
</div>
</div>
</div>
<Content class="theme-default-content custom" />
<div class="hero">
<p v-if="data.actionText && data.actionLink" class="action">
<NavLink class="action-button" :item="actionLink" />
</p>
</div>
<div v-if="data.footer" class="footer">
{{ data.footer }}
</div>
</main>
</template>
<script>
import NavLink from "@vuepress/theme-default/components/NavLink.vue";
export default {
name: "Home",
components: { NavLink },
computed: {
data() {
return this.$page.frontmatter;
},
actionLink() {
return {
link: this.data.actionLink,
text: this.data.actionText,
};
},
},
};
</script>
<style lang="stylus">
$accentColor =#45a612
$homePageWidth = 1080px
.container
max-width $homePageWidth
margin 0px auto
display block
.home
padding $navbarHeight 0
display block
max-width initial
margin initial
background-color #f5f8fe
.hero
text-align center
img
width: 190px
height 50px
display inline-block
margin initial
margin-bottom 0
margin-right 20px
vertical-align sub
h1
font-size 1.5rem
font-weight 600
h1, .description, .action
margin 1.8rem auto
.description
max-width 35rem
font-size 1.6rem
line-height 1.3
color lighten($textColor, 40%)
.action-button
display inline-block
font-size 1rem
color #fff
background-color $accentColor
padding 0.4rem 2rem
border-radius 4px
transition background-color .1s ease
box-sizing border-box
border-bottom 1px solid darken($accentColor, 10%)
&:hover
background-color lighten($accentColor, 10%)
.features
border-top 1px solid $borderColor
padding 1.2rem 0
background-color #fff
margin-top 2.5rem
.container
display flex
flex-wrap wrap
align-items flex-start
align-content stretch
justify-content space-between
.feature
flex-grow 1
flex-basis 30%
max-width 27%
border-radius 8px
padding 20px 22px
box-shadow 0 5px 4px 4px #ddd
.feature-index
border-radius 4px
background-color #083ac4
width 50px
line-height 50px
color #fff
font-size 20px
text-align center
margin-bottom 6px
box-shadow 1px 0 0 0 rgba(0,0,0,0.1)
h2
font-size 1.4rem
font-weight 500
border-bottom none
padding-bottom 0
color lighten($textColor, 10%)
p
color lighten($textColor, 25%)
.footer
padding 2.5rem
border-top 1px solid $borderColor
text-align center
color lighten($textColor, 25%)
@media (max-width: $MQMobile)
.home
.features
flex-direction column
.feature
max-width 100%
padding 0 2.5rem
@media (max-width: $MQMobileNarrow)
.home
padding-left 1.5rem
padding-right 1.5rem
.hero
img
max-height 210px
margin 2rem auto 1.2rem
h1
font-size 2rem
h1, .description, .action
margin 1.2rem auto
.description
font-size 1.2rem
.action-button
font-size 1rem
padding 0.6rem 1.2rem
.feature
h2
font-size 1.25rem
</style>

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="127px" height="33px" viewBox="0 0 127 33" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 60.1 (88133) - https://sketch.com -->
<title>编组</title>
<desc>Created with Sketch.</desc>
<g id="边框" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="编组" transform="translate(0.009182, 0.748513)" fill="#3853E2" fill-rule="nonzero">
<path d="M0.759305724,31.6772731 C0.560064722,31.6791092 0.367709307,31.6061338 0.221958202,31.4734152 C0.0807810747,31.3450126 0.000414795184,31.1651784 -2.30926389e-14,30.9767432 L-2.30926389e-14,4.66178783 C-2.2260807e-14,4.20168336 0.313948736,3.80095696 0.760683289,3.69084627 L15.4972786,0.0585848951 C16.569751,-0.205757045 17.6534532,0.449362159 17.9177952,1.52183459 C17.956398,1.67845168 17.975912,1.83916368 17.975912,2.00046801 L17.975912,3.87833873 L17.975912,3.87833873 L27.0430653,3.87846423 C27.2419461,3.87723595 27.4337439,3.95052464 27.5789901,4.08324879 C27.7196967,4.21170247 27.7996992,4.3913234 27.8,4.57945755 L27.8,30.9767432 C27.8,31.1650148 27.7203066,31.3449022 27.5794643,31.4734152 C27.434038,31.6063966 27.2417784,31.679566 27.0425911,31.678048 L0.759305724,31.6772731 Z M24.9795181,29.6919749 C25.1663537,29.6894167 25.3444569,29.6142874 25.4744747,29.4831871 C25.6044925,29.3520868 25.6757225,29.1758071 25.672426,28.9932981 L25.672426,6.51935108 C25.6804276,6.33969476 25.6117238,6.16485583 25.4827182,6.03657845 C25.349632,5.90403192 25.1694627,5.82656221 24.9795181,5.82021104 L17.975912,5.82021104 L17.975912,24.1756722 C17.975912,25.0841 17.3636733,25.8784229 16.4851908,26.1097444 L2.89162207,29.689195 L2.89162207,29.689195 L24.9795181,29.6919749 Z M13.6575103,14.6209346 C13.6199132,15.0037592 13.8157916,15.3724999 14.1578648,15.5628509 C14.5081326,15.762864 14.9415758,15.762864 15.2918435,15.5628509 C15.6339168,15.3724999 15.8297952,15.0037592 15.792198,14.6209346 L15.792198,12.6337831 C15.8297952,12.2509584 15.6339168,11.8822177 15.2918435,11.6918668 C14.9415758,11.4918536 14.5081326,11.4918536 14.1578648,11.6918668 C13.8157916,11.8822177 13.6199132,12.2509584 13.6575103,12.6337831 L13.6575103,14.6209346 Z" id="形状"></path>
<path d="M118.704003,11.8989407 C120.346683,11.8989407 121.247406,12.5401528 122.081954,13.3765164 L122.081954,13.3765164 L122.072308,12.0662134 L126.395149,12.0662134 L126.398273,25.9777286 C126.409992,29.8250013 124.222274,32.0831831 120.101165,32.0831831 C117.738012,32.0831831 115.980857,31.5256074 114.288465,30.0201528 L114.288465,30.0201528 L116.862878,27.3995467 C117.283114,27.761971 117.962321,28.4031831 119.34563,28.4031831 C121.305318,28.4031831 121.923965,27.0650013 121.925566,25.9498498 L121.925566,25.9498498 L121.932892,24.862577 C121.372683,25.6431831 119.972036,26.1762439 118.704003,26.1762439 C116.686677,26.1762439 114.699337,24.862577 114.132686,22.102577 C113.983868,21.3777286 113.956651,20.262577 113.929634,19.0080316 C113.887847,15.9971225 114.265016,14.4080316 115.119538,13.3765164 C116.043345,12.2613649 117.320694,11.8989407 118.704003,11.8989407 Z M41.331845,7.21530432 C45.1071263,7.21530432 47.9688464,9.22257705 48.7129341,12.8468195 C48.8789229,13.6553043 48.9122644,14.5195467 48.9315984,17.1401528 C48.9417209,22.102577 48.7670055,23.3571225 47.3812941,25.0298498 C46.272725,26.3680316 44.4561307,27.0650013 41.9488828,27.0650013 L41.9488828,27.0650013 L34.3983202,27.0650013 L34.444118,7.21530432 Z M87.6281496,11.8989407 C89.0979157,11.8989407 90.1405207,12.3450013 91.1766013,13.3207589 L91.1766013,13.3207589 L87.9497992,16.6940922 C87.7080003,16.4989407 87.2017078,15.8577286 86.3371396,15.8577286 C85.2996577,15.8577286 84.3993456,16.6662134 84.4030675,18.0880316 L84.4030675,18.0880316 L84.4017032,27.0650013 L79.9059483,27.0650013 L79.9101969,12.0662134 L84.2330381,12.0662134 L84.2369602,13.3486377 C84.8607305,12.4565164 86.1583836,11.8989407 87.6281496,11.8989407 Z M96.630106,12.651668 L96.6209343,27.0650013 L92.1251795,27.0650013 L92.1343511,12.651668 L96.630106,12.651668 Z M107.109754,11.8989407 C108.637158,11.8989407 111.119909,12.902577 111.76097,16.0250013 C111.886892,16.6383346 111.926358,17.251668 111.91411,17.7534861 L111.91411,17.7534861 L111.894973,27.0650013 L107.399218,27.0650013 L107.412231,18.0043952 C107.418355,17.7534861 107.389936,17.4746983 107.344146,17.251668 C107.138091,16.2480316 106.331761,15.8298498 105.755382,15.8298498 C104.7179,15.8298498 103.812265,16.331668 103.809863,18.0043952 L103.809863,18.0043952 L103.796851,27.0650013 L99.3010959,27.0650013 L99.3053445,12.0662134 L103.599367,12.0662134 L103.609013,13.3765164 C104.394249,12.4286377 105.755264,11.8989407 107.109754,11.8989407 Z M71.9783717,12.1033851 C76.3679444,12.2847164 78.6430278,14.7931317 78.8036219,19.6286313 C78.6430278,24.3432433 76.3411787,26.791215 71.8980746,26.9725462 C67.5085019,26.6703275 65.2066527,24.2223558 64.9925272,19.6286313 C65.2066527,14.7931317 67.5352675,12.2847164 71.9783717,12.1033851 Z M57.0903516,12.1033851 C61.4799244,12.2847164 63.7550078,14.7931317 63.9156019,19.6286313 C63.7550078,24.3432433 61.4531587,26.791215 57.0100546,26.9725462 C52.6204819,26.6703275 50.3186327,24.2223558 50.1045072,19.6286313 C50.3186327,14.7931317 52.6472475,12.2847164 57.0903516,12.1033851 Z M71.8177775,15.4580129 C69.9441794,15.4580129 69.3649805,16.848219 69.3649805,19.6286313 C69.4185119,22.288156 69.9977108,23.6481403 71.8177775,23.708584 C73.7984384,23.708584 74.5326587,22.3485998 74.5326587,19.6286313 C74.4791273,16.9086628 73.744907,15.5184567 71.8177775,15.4580129 Z M56.9297575,15.4580129 C55.0561594,15.4580129 54.4769605,16.848219 54.4769605,19.6286313 C54.5304919,22.288156 55.1096908,23.6481403 56.9297575,23.708584 C58.9104184,23.708584 59.6446387,22.3485998 59.6446387,19.6286313 C59.5911073,16.9086628 58.856887,15.5184567 56.9297575,15.4580129 Z M41.3605823,11.2856074 L39.2279806,11.2856074 L39.211165,22.9946983 L41.3149478,22.9946983 C42.3812486,22.9946983 43.0618561,22.6601528 43.5237599,22.102577 C44.0087589,21.5171225 44.1712259,20.7643952 44.1476118,17.1401528 C44.1393673,14.8540922 44.0602357,13.7668195 43.9629319,13.2928801 C43.6538494,11.7874255 42.5133399,11.2856074 41.3605823,11.2856074 L41.3605823,11.2856074 Z M120.164853,15.8298498 C118.868001,15.8298498 118.428992,16.4989407 118.431097,19.0359104 C118.441359,19.9280316 118.50392,20.5134861 118.561157,20.792274 C118.727146,21.6007589 119.221991,22.1862134 120.173016,22.1862134 C121.469868,22.1862134 121.908877,21.5171225 121.906764,18.9801528 C121.89651,18.0880316 121.83395,17.502577 121.776712,17.2237892 C121.610723,16.4153043 121.115878,15.8298498 120.164853,15.8298498 Z M94.3303699,6.73976317 C95.5800954,6.73976317 96.5931982,7.7528659 96.5931982,9.00259145 C96.5931982,10.252317 95.5800954,11.2654197 94.3303699,11.2654197 C93.0806443,11.2654197 92.0675416,10.252317 92.0675416,9.00259145 C92.0675416,7.7528659 93.0806443,6.73976317 94.3303699,6.73976317 Z" id="形状结合"></path>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 6.9 KiB

10
doc/.vuepress/theme/index.js Executable file
View File

@ -0,0 +1,10 @@
/*
* @Author: smallalso<hu141418@gmail.com>
* @Date: 2020-12-14 16:55:21
* @LastEditors: smallalso<hu141418@gmail.com>
* @LastEditTime: 2020-12-14 16:55:22
* @FilePath: /his-doc/docs/.vuepress/theme/index.js
*/
module.exports = {
extend: '@vuepress/theme-default',
};

View File

@ -0,0 +1,131 @@
<template>
<div
class="theme-container"
:class="pageClasses"
@touchstart="onTouchStart"
@touchend="onTouchEnd"
>
<Navbar v-if="shouldShowNavbar" @toggle-sidebar="toggleSidebar" />
<div class="sidebar-mask" @click="toggleSidebar(false)" />
<Sidebar :items="sidebarItems" @toggle-sidebar="toggleSidebar">
<template #top>
<slot name="sidebar-top" />
</template>
<template #bottom>
<slot name="sidebar-bottom" />
</template>
</Sidebar>
<Home v-if="$page.frontmatter.home" />
<Page v-else :sidebar-items="sidebarItems">
<template #top>
<slot name="page-top" />
</template>
<template #bottom>
<slot name="page-bottom" />
</template>
</Page>
</div>
</template>
<script>
import Navbar from "@parent-theme/components/Navbar.vue";
import Page from "@parent-theme/components/Page.vue";
import Sidebar from "@parent-theme/components/Sidebar.vue";
import { resolveSidebarItems } from "@parent-theme/util";
export default {
name: "Layout",
components: {
Page,
Sidebar,
Navbar,
},
data() {
return {
isSidebarOpen: false,
};
},
computed: {
shouldShowNavbar() {
const { themeConfig } = this.$site;
const { frontmatter } = this.$page;
if (frontmatter.navbar === false || themeConfig.navbar === false) {
return false;
}
return (
this.$title ||
themeConfig.logo ||
themeConfig.repo ||
themeConfig.nav ||
this.$themeLocaleConfig.nav
);
},
shouldShowSidebar() {
const { frontmatter } = this.$page;
return !frontmatter.home && frontmatter.sidebar !== false && this.sidebarItems.length;
},
sidebarItems() {
return resolveSidebarItems(
this.$page,
this.$page.regularPath,
this.$site,
this.$localePath
);
},
pageClasses() {
const userPageClass = this.$page.frontmatter.pageClass;
return [
{
"no-navbar": !this.shouldShowNavbar,
"sidebar-open": this.isSidebarOpen,
"no-sidebar": !this.shouldShowSidebar,
},
userPageClass,
];
},
},
mounted() {
this.$router.afterEach(() => {
this.isSidebarOpen = false;
});
},
methods: {
toggleSidebar(to) {
this.isSidebarOpen = typeof to === "boolean" ? to : !this.isSidebarOpen;
this.$emit("toggle-sidebar", this.isSidebarOpen);
},
// side swipe
onTouchStart(e) {
this.touchStart = {
x: e.changedTouches[0].clientX,
y: e.changedTouches[0].clientY,
};
},
onTouchEnd(e) {
const dx = e.changedTouches[0].clientX - this.touchStart.x;
const dy = e.changedTouches[0].clientY - this.touchStart.y;
if (Math.abs(dx) > Math.abs(dy) && Math.abs(dx) > 40) {
if (dx > 0 && this.touchStart.x <= 80) {
this.toggleSidebar(true);
} else {
this.toggleSidebar(false);
}
}
},
},
};
</script>

View File

@ -0,0 +1,141 @@
/**
* prism.js default theme for JavaScript, CSS and HTML
* Based on dabblet (http://dabblet.com)
* @author Lea Verou
*/
code[class*="language-"],
pre[class*="language-"] {
color: black;
background: none;
text-shadow: 0 1px white;
font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
font-size: 1em;
text-align: left;
white-space: pre;
word-spacing: normal;
word-break: normal;
word-wrap: normal;
line-height: 1.5;
-moz-tab-size: 4;
-o-tab-size: 4;
tab-size: 4;
-webkit-hyphens: none;
-moz-hyphens: none;
-ms-hyphens: none;
hyphens: none;
}
pre[class*="language-"]::-moz-selection, pre[class*="language-"] ::-moz-selection,
code[class*="language-"]::-moz-selection, code[class*="language-"] ::-moz-selection {
text-shadow: none;
background: #b3d4fc;
}
pre[class*="language-"]::selection, pre[class*="language-"] ::selection,
code[class*="language-"]::selection, code[class*="language-"] ::selection {
text-shadow: none;
background: #b3d4fc;
}
@media print {
code[class*="language-"],
pre[class*="language-"] {
text-shadow: none;
}
}
/* Code blocks */
pre[class*="language-"] {
padding: 1em;
margin: .5em 0;
overflow: auto;
}
:not(pre) > code[class*="language-"],
pre[class*="language-"] {
background: #f9fafb;
}
/* Inline code */
:not(pre) > code[class*="language-"] {
padding: .1em;
border-radius: .3em;
white-space: normal;
}
.token.comment,
.token.prolog,
.token.doctype,
.token.cdata {
color: slategray;
}
.token.punctuation {
color: #999;
}
.token.namespace {
opacity: .7;
}
.token.property,
.token.tag,
.token.boolean,
.token.number,
.token.constant,
.token.symbol,
.token.deleted {
color: #905;
}
.token.selector,
.token.attr-name,
.token.string,
.token.char,
.token.builtin,
.token.inserted {
color: #690;
}
.token.operator,
.token.entity,
.token.url,
.language-css .token.string,
.style .token.string {
color: #9a6e3a;
/* This background color was intended by the author of this theme. */
background: hsla(0, 0%, 100%, .5);
}
.token.atrule,
.token.attr-value,
.token.keyword {
color: #329aff;
}
.token.function,
.token.class-name {
color: #DD4A68;
}
.token.regex,
.token.important,
.token.variable {
color: #e90;
}
.token.important,
.token.bold {
font-weight: bold;
}
.token.italic {
font-style: italic;
}
.token.entity {
cursor: help;
}

View File

@ -0,0 +1,18 @@
.nav-link.external {
.outbound {
display: none;
}
}
.nav-link.external:last-child {
color: #fff;
background-color: #67c23a;
border-color: #67c23a;
padding: 6px 14px;
border-radius: 4px;
}
.doc-main {
padding-top: 88px;
padding-left: 380px;
}

View File

@ -0,0 +1,516 @@
/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
========================================================================== */
/**
* 1. Correct the line height in all browsers.
* 2. Prevent adjustments of font size after orientation changes in
* IE on Windows Phone and in iOS.
*/
// * {
// box-sizing: border-box;
// margin: 0;
// padding: 0;
// }
html {
line-height: 1.15; /* 1 */
-ms-text-size-adjust: 100%; /* 2 */
-webkit-text-size-adjust: 100%; /* 2 */
}
/* Sections
========================================================================== */
/**
* Remove the margin in all browsers (opinionated).
*/
body {
margin: 0;
padding: 0;
}
/**
* Add the correct display in IE 9-.
*/
article,
aside,
footer,
header,
nav,
section {
display: block;
}
/**
* Correct the font size and margin on `h1` elements within `section` and
* `article` contexts in Chrome, Firefox, and Safari.
*/
h1,
h2,
h3,
h4,
h5 {
margin: 0;
padding: 0;
}
/**
* Correct the font size and margin on `p` elements
*/
/* Grouping content
========================================================================== */
/**
* Add the correct display in IE 9-.
* 1. Add the correct display in IE.
*/
figcaption,
figure,
main {
/* 1 */
display: block;
}
/**
* Add the correct margin in IE 8.
*/
figure {
margin: 0;
padding: 0;
}
/**
* 1. Add the correct box sizing in Firefox.
* 2. Show the overflow in Edge and IE.
*/
hr {
box-sizing: content-box; /* 1 */
height: 0; /* 1 */
overflow: visible; /* 2 */
}
/**
* 1. Correct the inheritance and scaling of font size in all browsers.
* 2. Correct the odd `em` font sizing in all browsers.
*/
pre {
font-family: monospace, monospace; /* 1 */
font-size: 1em; /* 2 */
}
/* Text-level semantics
========================================================================== */
/**
* 1. Remove the gray background on active links in IE 10.
* 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
*/
a {
background-color: transparent; /* 1 */
-webkit-text-decoration-skip: objects; /* 2 */
color: #329aff;
}
/**
* 1. Remove the bottom border in Chrome 57- and Firefox 39-.
* 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
*/
abbr[title] {
border-bottom: none; /* 1 */
text-decoration: underline; /* 2 */
text-decoration: underline dotted; /* 2 */
}
/**
* Prevent the duplicate application of `bolder` by the next rule in Safari 6.
*/
b,
strong {
font-weight: inherit;
}
/**
* Add the correct font weight in Chrome, Edge, and Safari.
*/
b,
strong {
font-weight: bolder;
}
/**
* 1. Correct the inheritance and scaling of font size in all browsers.
* 2. Correct the odd `em` font sizing in all browsers.
*/
code,
kbd,
samp {
font-family: monospace, monospace; /* 1 */
font-size: 1em; /* 2 */
}
/**
* Add the correct font style in Android 4.3-.
*/
dfn {
font-style: italic;
}
/**
* Add the correct background and color in IE 9-.
*/
mark {
background-color: #ff0;
color: #000;
}
/**
* Add the correct font size in all browsers.
*/
small {
font-size: 80%;
}
/**
* Prevent `sub` and `sup` elements from affecting the line height in
* all browsers.
*/
sub,
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline;
}
sub {
bottom: -0.25em;
}
sup {
top: -0.5em;
}
/* Embedded content
========================================================================== */
/**
* Add the correct display in IE 9-.
*/
audio,
video {
display: inline-block;
}
/**
* Add the correct display in iOS 4-7.
*/
audio:not([controls]) {
display: none;
height: 0;
}
/**
* Remove the border on images inside links in IE 10-.
*/
img {
border-style: none;
}
/**
* Hide the overflow in IE.
*/
svg:not(:root) {
overflow: hidden;
}
/* Forms
========================================================================== */
/**
* 1. Change the font styles in all browsers (opinionated).
* 2. Remove the margin in Firefox and Safari.
*/
button,
input,
optgroup,
select,
textarea {
font-family: sans-serif; /* 1 */
font-size: 100%; /* 1 */
line-height: 1.15; /* 1 */
margin: 0; /* 2 */
padding: 0;
}
/**
* Show the overflow in IE.
* 1. Show the overflow in Edge.
*/
button,
input {
/* 1 */
overflow: visible;
outline: none;
}
/**
* Remove the inheritance of text transform in Edge, Firefox, and IE.
* 1. Remove the inheritance of text transform in Firefox.
*/
button,
select {
/* 1 */
text-transform: none;
}
/**
* 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
* controls in Android 4.
* 2. Correct the inability to style clickable types in iOS and Safari.
*/
button,
html [type="button"], /* 1 */
[type="reset"],
[type="submit"] {
-webkit-appearance: button; /* 2 */
}
/**
* Remove the inner border and padding in Firefox.
*/
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
border-style: none;
padding: 0;
}
/**
* Restore the focus styles unset by the previous rule.
*/
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
outline: 1px dotted ButtonText;
}
/**
* Correct the padding in Firefox.
*/
fieldset {
padding: 0.35em 0.75em 0.625em;
}
/**
* 1. Correct the text wrapping in Edge and IE.
* 2. Correct the color inheritance from `fieldset` elements in IE.
* 3. Remove the padding so developers are not caught out when they zero out
* `fieldset` elements in all browsers.
*/
legend {
box-sizing: border-box; /* 1 */
color: inherit; /* 2 */
display: table; /* 1 */
max-width: 100%; /* 1 */
padding: 0; /* 3 */
white-space: normal; /* 1 */
}
/**
* 1. Add the correct display in IE 9-.
* 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
*/
progress {
display: inline-block; /* 1 */
vertical-align: baseline; /* 2 */
}
/**
* Remove the default vertical scrollbar in IE.
*/
textarea {
overflow: auto;
}
/**
* 1. Add the correct box sizing in IE 10-.
* 2. Remove the padding in IE 10-.
*/
[type="checkbox"],
[type="radio"] {
box-sizing: border-box; /* 1 */
padding: 0; /* 2 */
}
/**
* Correct the cursor style of increment and decrement buttons in Chrome.
*/
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
height: auto;
}
/**
* 1. Correct the odd appearance in Chrome and Safari.
* 2. Correct the outline style in Safari.
*/
[type="search"] {
-webkit-appearance: textfield; /* 1 */
outline-offset: -2px; /* 2 */
}
/**
* Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
*/
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
-webkit-appearance: none;
}
/**
* 1. Correct the inability to style clickable types in iOS and Safari.
* 2. Change font properties to `inherit` in Safari.
*/
::-webkit-file-upload-button {
-webkit-appearance: button; /* 1 */
font: inherit; /* 2 */
}
/* Interactive
========================================================================== */
/*
* Add the correct display in IE 9-.
* 1. Add the correct display in Edge, IE, and Firefox.
*/
details, /* 1 */
menu {
display: block;
}
/*
* Add the correct display in all browsers.
*/
summary {
display: list-item;
}
/* Scripting
========================================================================== */
/**
* Add the correct display in IE 9-.
*/
canvas {
display: inline-block;
}
/**
* Add the correct display in IE.
*/
template {
display: none;
}
/* Hidden
========================================================================== */
/**
* Add the correct display in IE 10-.
*/
[hidden] {
display: none;
}
input {
outline: none;
}
/*reset browser scroll style*/
html,
body {
scrollbar-arrow-color: rgba(209, 213, 219, 1); /**/ /*三角箭头的颜色*/
scrollbar-face-color: rgba(209, 213, 219, 1); /**/ /*立体滚动条的颜色*/
scrollbar-3dlight-color: rgba(209, 213, 219, 1); /**/ /*立体滚动条亮边的颜色*/
scrollbar-highlight-color: rgba(209, 213, 219, 1); /**/ /*滚动条空白部分的颜色*/
scrollbar-shadow-color: rgba(209, 213, 219, 1); /**/ /*立体滚动条阴影的颜色*/
scrollbar-darkshadow-color: rgba(209, 213, 219, 1); /**/ /*立体滚动条强阴影的颜色*/
scrollbar-track-color: rgba(209, 213, 219, 1); /**/ /*立体滚动条背景颜色*/
scrollbar-base-color: rgba(244, 245, 249, 1); /**/ /*滚动条的基本颜色*/
}
/* chrome scroll style */
/*定义滚动条高宽及背景 高宽分别对应横竖滚动条的尺寸*/
::-webkit-scrollbar {
width: 6px;
height: 6px;
background-color: transparent;
}
/*定义滚动条轨道 内阴影+圆角*/
::-webkit-scrollbar-track {
background-color: transparent;
}
/*定义滑块*/
::-webkit-scrollbar-thumb {
border-radius: 4px;
background-color: rgba(209, 213, 219, 1);
}
ul li {
// list-style: none;
padding: 0;
margin: 0;
}
dl,
dt,
dd {
margin: 0;
padding: 0;
}
button {
cursor: pointer;
border: none;
}
button[disabled] {
cursor: not-allowed;
}

View File

@ -0,0 +1,3 @@
@import "reset";
@import "layout";
@import "code";

16
doc/README.md Normal file
View File

@ -0,0 +1,16 @@
---
content: Home
home: true
#heroImage: ../imgs/common/logo.svg
heroText: 一款所见即所得的H5编辑器
features:
- title: 简洁方便
details: 任何人只需傻瓜式拖拽或进行简单编辑即可生成精美的H5页面
- title: 插拔式体验
details: 产品以GPL协议开源可植入任何系统并支持二次开发
- title: 持续迭代,无限可能
details: 目前正在持续迭代中,后续可根据需求开发功能更强大的可视化系统
actionText: 快速上手 →
actionLink: /zh/guide/
footer: GPL Licensed | Copyright © 2018-present Dooring
---

Binary file not shown.

After

Width:  |  Height:  |  Size: 164 KiB

BIN
doc/img/common/home.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 404 KiB

12
doc/img/common/logo.svg Normal file
View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="127px" height="33px" viewBox="0 0 127 33" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 60.1 (88133) - https://sketch.com -->
<title>编组</title>
<desc>Created with Sketch.</desc>
<g id="边框" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="编组" transform="translate(0.009182, 0.748513)" fill="#3853E2" fill-rule="nonzero">
<path d="M0.759305724,31.6772731 C0.560064722,31.6791092 0.367709307,31.6061338 0.221958202,31.4734152 C0.0807810747,31.3450126 0.000414795184,31.1651784 -2.30926389e-14,30.9767432 L-2.30926389e-14,4.66178783 C-2.2260807e-14,4.20168336 0.313948736,3.80095696 0.760683289,3.69084627 L15.4972786,0.0585848951 C16.569751,-0.205757045 17.6534532,0.449362159 17.9177952,1.52183459 C17.956398,1.67845168 17.975912,1.83916368 17.975912,2.00046801 L17.975912,3.87833873 L17.975912,3.87833873 L27.0430653,3.87846423 C27.2419461,3.87723595 27.4337439,3.95052464 27.5789901,4.08324879 C27.7196967,4.21170247 27.7996992,4.3913234 27.8,4.57945755 L27.8,30.9767432 C27.8,31.1650148 27.7203066,31.3449022 27.5794643,31.4734152 C27.434038,31.6063966 27.2417784,31.679566 27.0425911,31.678048 L0.759305724,31.6772731 Z M24.9795181,29.6919749 C25.1663537,29.6894167 25.3444569,29.6142874 25.4744747,29.4831871 C25.6044925,29.3520868 25.6757225,29.1758071 25.672426,28.9932981 L25.672426,6.51935108 C25.6804276,6.33969476 25.6117238,6.16485583 25.4827182,6.03657845 C25.349632,5.90403192 25.1694627,5.82656221 24.9795181,5.82021104 L17.975912,5.82021104 L17.975912,24.1756722 C17.975912,25.0841 17.3636733,25.8784229 16.4851908,26.1097444 L2.89162207,29.689195 L2.89162207,29.689195 L24.9795181,29.6919749 Z M13.6575103,14.6209346 C13.6199132,15.0037592 13.8157916,15.3724999 14.1578648,15.5628509 C14.5081326,15.762864 14.9415758,15.762864 15.2918435,15.5628509 C15.6339168,15.3724999 15.8297952,15.0037592 15.792198,14.6209346 L15.792198,12.6337831 C15.8297952,12.2509584 15.6339168,11.8822177 15.2918435,11.6918668 C14.9415758,11.4918536 14.5081326,11.4918536 14.1578648,11.6918668 C13.8157916,11.8822177 13.6199132,12.2509584 13.6575103,12.6337831 L13.6575103,14.6209346 Z" id="形状"></path>
<path d="M118.704003,11.8989407 C120.346683,11.8989407 121.247406,12.5401528 122.081954,13.3765164 L122.081954,13.3765164 L122.072308,12.0662134 L126.395149,12.0662134 L126.398273,25.9777286 C126.409992,29.8250013 124.222274,32.0831831 120.101165,32.0831831 C117.738012,32.0831831 115.980857,31.5256074 114.288465,30.0201528 L114.288465,30.0201528 L116.862878,27.3995467 C117.283114,27.761971 117.962321,28.4031831 119.34563,28.4031831 C121.305318,28.4031831 121.923965,27.0650013 121.925566,25.9498498 L121.925566,25.9498498 L121.932892,24.862577 C121.372683,25.6431831 119.972036,26.1762439 118.704003,26.1762439 C116.686677,26.1762439 114.699337,24.862577 114.132686,22.102577 C113.983868,21.3777286 113.956651,20.262577 113.929634,19.0080316 C113.887847,15.9971225 114.265016,14.4080316 115.119538,13.3765164 C116.043345,12.2613649 117.320694,11.8989407 118.704003,11.8989407 Z M41.331845,7.21530432 C45.1071263,7.21530432 47.9688464,9.22257705 48.7129341,12.8468195 C48.8789229,13.6553043 48.9122644,14.5195467 48.9315984,17.1401528 C48.9417209,22.102577 48.7670055,23.3571225 47.3812941,25.0298498 C46.272725,26.3680316 44.4561307,27.0650013 41.9488828,27.0650013 L41.9488828,27.0650013 L34.3983202,27.0650013 L34.444118,7.21530432 Z M87.6281496,11.8989407 C89.0979157,11.8989407 90.1405207,12.3450013 91.1766013,13.3207589 L91.1766013,13.3207589 L87.9497992,16.6940922 C87.7080003,16.4989407 87.2017078,15.8577286 86.3371396,15.8577286 C85.2996577,15.8577286 84.3993456,16.6662134 84.4030675,18.0880316 L84.4030675,18.0880316 L84.4017032,27.0650013 L79.9059483,27.0650013 L79.9101969,12.0662134 L84.2330381,12.0662134 L84.2369602,13.3486377 C84.8607305,12.4565164 86.1583836,11.8989407 87.6281496,11.8989407 Z M96.630106,12.651668 L96.6209343,27.0650013 L92.1251795,27.0650013 L92.1343511,12.651668 L96.630106,12.651668 Z M107.109754,11.8989407 C108.637158,11.8989407 111.119909,12.902577 111.76097,16.0250013 C111.886892,16.6383346 111.926358,17.251668 111.91411,17.7534861 L111.91411,17.7534861 L111.894973,27.0650013 L107.399218,27.0650013 L107.412231,18.0043952 C107.418355,17.7534861 107.389936,17.4746983 107.344146,17.251668 C107.138091,16.2480316 106.331761,15.8298498 105.755382,15.8298498 C104.7179,15.8298498 103.812265,16.331668 103.809863,18.0043952 L103.809863,18.0043952 L103.796851,27.0650013 L99.3010959,27.0650013 L99.3053445,12.0662134 L103.599367,12.0662134 L103.609013,13.3765164 C104.394249,12.4286377 105.755264,11.8989407 107.109754,11.8989407 Z M71.9783717,12.1033851 C76.3679444,12.2847164 78.6430278,14.7931317 78.8036219,19.6286313 C78.6430278,24.3432433 76.3411787,26.791215 71.8980746,26.9725462 C67.5085019,26.6703275 65.2066527,24.2223558 64.9925272,19.6286313 C65.2066527,14.7931317 67.5352675,12.2847164 71.9783717,12.1033851 Z M57.0903516,12.1033851 C61.4799244,12.2847164 63.7550078,14.7931317 63.9156019,19.6286313 C63.7550078,24.3432433 61.4531587,26.791215 57.0100546,26.9725462 C52.6204819,26.6703275 50.3186327,24.2223558 50.1045072,19.6286313 C50.3186327,14.7931317 52.6472475,12.2847164 57.0903516,12.1033851 Z M71.8177775,15.4580129 C69.9441794,15.4580129 69.3649805,16.848219 69.3649805,19.6286313 C69.4185119,22.288156 69.9977108,23.6481403 71.8177775,23.708584 C73.7984384,23.708584 74.5326587,22.3485998 74.5326587,19.6286313 C74.4791273,16.9086628 73.744907,15.5184567 71.8177775,15.4580129 Z M56.9297575,15.4580129 C55.0561594,15.4580129 54.4769605,16.848219 54.4769605,19.6286313 C54.5304919,22.288156 55.1096908,23.6481403 56.9297575,23.708584 C58.9104184,23.708584 59.6446387,22.3485998 59.6446387,19.6286313 C59.5911073,16.9086628 58.856887,15.5184567 56.9297575,15.4580129 Z M41.3605823,11.2856074 L39.2279806,11.2856074 L39.211165,22.9946983 L41.3149478,22.9946983 C42.3812486,22.9946983 43.0618561,22.6601528 43.5237599,22.102577 C44.0087589,21.5171225 44.1712259,20.7643952 44.1476118,17.1401528 C44.1393673,14.8540922 44.0602357,13.7668195 43.9629319,13.2928801 C43.6538494,11.7874255 42.5133399,11.2856074 41.3605823,11.2856074 L41.3605823,11.2856074 Z M120.164853,15.8298498 C118.868001,15.8298498 118.428992,16.4989407 118.431097,19.0359104 C118.441359,19.9280316 118.50392,20.5134861 118.561157,20.792274 C118.727146,21.6007589 119.221991,22.1862134 120.173016,22.1862134 C121.469868,22.1862134 121.908877,21.5171225 121.906764,18.9801528 C121.89651,18.0880316 121.83395,17.502577 121.776712,17.2237892 C121.610723,16.4153043 121.115878,15.8298498 120.164853,15.8298498 Z M94.3303699,6.73976317 C95.5800954,6.73976317 96.5931982,7.7528659 96.5931982,9.00259145 C96.5931982,10.252317 95.5800954,11.2654197 94.3303699,11.2654197 C93.0806443,11.2654197 92.0675416,10.252317 92.0675416,9.00259145 C92.0675416,7.7528659 93.0806443,6.73976317 94.3303699,6.73976317 Z" id="形状结合"></path>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 6.9 KiB

View File

@ -1,11 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
</body>
</html>

17
doc/zh/guide/README.md Normal file
View File

@ -0,0 +1,17 @@
<img src="../../img/common/logo.svg" alt="foo">
H5-Dooring 是一款功能强大,高可扩展的 H5 可视化页面配置解决方案,致力于提供一套简单方便、专业可靠、无限可能的 H5 落地页最佳实践。
## 功能特点
🎉 **可扩展,** Dooring 实现了较为完整的业务闭环,并使其模块化,编辑器内部功能接口也全部可以对接不同服务端语言,实现了标准化接口。此外还支持自定义组件,二次开发,设计模板等能力,以满足功能和跨领域的分层需求。
📦 **开箱即用,** Dooring 内置了**表单渲染器、页面渲染器、动态加载内核**等,仅需一套源码即可上手开发。并且还提供针对 React 的定制插件,内涵丰富的功能,可满足日常 80%的页面制作需求。
🚀 **大量自研,** 包含整个编辑器架构、组件设计、文档、请求库封装,后台管理系统等,满足日常项目的周边需求。
🚄 **与时俱进,** 在满足需求的同时,我们也不会停止对新技术的探索。比如更多**营销组件、业务功能后台管理可视化PC 页面编辑器,数据大屏定制**等等。
## 为什么选择 Dooring
目前**github**已超过 3000+start上线 2 个月累计 500+用户使用,解决完善了 100+问题,后续会持续迭代,更新,自研优秀,先进的 lowcode/nodecode 解决方案。

View File

@ -0,0 +1 @@
DSL设计

View File

@ -0,0 +1 @@
基本介绍--组件结构

View File

@ -0,0 +1 @@
动态加载

View File

@ -0,0 +1,287 @@
```
src
├─ assets
│ ├─ header.png
│ ├─ form.png
│ ├─ footer.png
│ ├─ icon.png
│ ├─ picture.png
├─ components
│ ├─ BackTop
│ │ └─ index.js
│ ├─ BasicShop
│ │ ├─ BasicComponents
│ │ │ ├─ Card
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ Carousel
│ │ │ │ ├─ index.less
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ Footer
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ Form
│ │ │ │ ├─ BaseForm.tsx
│ │ │ │ ├─ BasePopoverForm.tsx
│ │ │ │ ├─ baseForm.less
│ │ │ │ ├─ index.less
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ Header
│ │ │ │ ├─ index.less
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ Icon
│ │ │ │ ├─ icon.ts
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ Image
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ LongText
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ Nav
│ │ │ │ ├─ index.less
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ Notice
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ Qrcode
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ RichText
│ │ │ │ ├─ index.less
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ Text
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ WhiteTpl
│ │ │ │ ├─ index.less
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ XButton
│ │ │ │ ├─ Modal.tsx
│ │ │ │ ├─ index.less
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ schema.ts
│ │ │ └─ template.ts
│ │ ├─ MediaComponents
│ │ │ ├─ Audio
│ │ │ │ ├─ index.less
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ Calendar
│ │ │ │ ├─ index.less
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ Map
│ │ │ │ ├─ index.less
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ Video
│ │ │ │ ├─ index.css
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ schema.ts
│ │ │ └─ template.ts
│ │ ├─ ShopComponents
│ │ │ ├─ CardLabel
│ │ │ │ ├─ index.less
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ Coupons
│ │ │ │ ├─ index.less
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ List
│ │ │ │ ├─ index.less
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ Tab
│ │ │ │ ├─ index.less
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ ZhuanLan
│ │ │ │ ├─ index.less
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ schema.ts
│ │ │ └─ template.ts
│ │ ├─ VisualComponents
│ │ │ ├─ Area
│ │ │ │ ├─ index.less
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ Chart
│ │ │ │ ├─ index.less
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ Funnel
│ │ │ │ ├─ index.less
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ Line
│ │ │ │ ├─ index.less
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ Pie
│ │ │ │ ├─ index.less
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ Radar
│ │ │ │ ├─ index.less
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ WordCloud
│ │ │ │ ├─ index.less
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ XProgress
│ │ │ │ ├─ index.less
│ │ │ │ ├─ index.tsx
│ │ │ │ ├─ schema.ts
│ │ │ │ └─ template.ts
│ │ │ ├─ schema.ts
│ │ │ └─ template.ts
│ │ ├─ common.ts
│ │ └─ schema.ts
│ ├─ Calibration
│ │ ├─ index.less
│ │ └─ index.tsx
│ ├─ ErrorBundaries
│ │ └─ index.tsx
│ ├─ LoadingCp
│ │ └─ index.tsx
│ ├─ ModalTpl
│ │ ├─ cate.js
│ │ ├─ index.js
│ │ └─ index.less
│ └─ Zan
│ ├─ index.less
│ └─ index.tsx
├─ core
│ ├─ FormComponents
│ │ ├─ CardPicker
│ │ │ ├─ index.less
│ │ │ └─ index.tsx
│ │ ├─ Color
│ │ │ ├─ index.less
│ │ │ └─ index.tsx
│ │ ├─ DataList
│ │ │ ├─ editorModal.tsx
│ │ │ ├─ index.less
│ │ │ └─ index.tsx
│ │ ├─ FormItems
│ │ │ ├─ EditorModal.tsx
│ │ │ ├─ FormItems.tsx
│ │ │ ├─ formItems.less
│ │ │ └─ index.tsx
│ │ ├─ InteractionData
│ │ │ ├─ index.less
│ │ │ └─ index.tsx
│ │ ├─ MutiText
│ │ │ ├─ index.less
│ │ │ └─ index.tsx
│ │ ├─ Pos
│ │ │ ├─ index.less
│ │ │ └─ index.tsx
│ │ ├─ Table
│ │ │ ├─ index.less
│ │ │ └─ index.tsx
│ │ ├─ Upload
│ │ │ ├─ index.less
│ │ │ └─ index.tsx
│ │ ├─ XEditor
│ │ │ ├─ index.less
│ │ │ └─ index.tsx
│ │ └─ types.ts
│ ├─ DynamicEngine.tsx
│ ├─ FormRender.tsx
│ ├─ ViewRender.tsx
│ └─ viewRender.less
├─ layouts
│ ├─ __tests__
│ │ └─ index.test.js
│ ├─ index.less
│ └─ index.tsx
├─ pages
│ ├─ __tests__
│ │ └─ index.test.js
│ ├─ editor
│ │ ├─ components
│ │ │ ├─ AvatorGroup
│ │ │ │ └─ index.tsx
│ │ │ ├─ CanvasControl
│ │ │ │ ├─ index.less
│ │ │ │ └─ index.tsx
│ │ │ └─ Header
│ │ │ ├─ index.js
│ │ │ └─ index.less
│ │ ├─ models
│ │ │ └─ editorModal.js
│ │ ├─ services
│ │ │ └─ editorService.js
│ │ ├─ Container.js
│ │ ├─ SourceBox.tsx
│ │ ├─ TargetBox.js
│ │ ├─ index.js
│ │ ├─ index.less
│ │ └─ preview.tsx
│ ├─ help
│ │ ├─ index.less
│ │ └─ index.tsx
│ ├─ home
│ │ ├─ index.less
│ │ └─ index.tsx
│ ├─ ide
│ │ ├─ _draft.tsx
│ │ ├─ index.less
│ │ └─ index.tsx
│ ├─ login
│ │ ├─ index.less
│ │ └─ index.tsx
│ ├─ document.ejs
│ └─ mobileTip.js
├─ utils
│ ├─ req.ts
│ └─ tool.ts
├─ app.tsx
└─ global.css
```

View File

@ -0,0 +1 @@
导入 json 生成页面

View File

@ -0,0 +1 @@
真机预览

View File

@ -0,0 +1 @@
网页预览

View File

@ -0,0 +1 @@
撤销/重做

View File

@ -0,0 +1 @@
保存 json

View File

@ -0,0 +1 @@
截图功能

View File

@ -0,0 +1 @@
模板库

View File

@ -0,0 +1,3 @@
<img src="../../img/common/framework.png" alt="foo">
注:灰色部分还未实现,正在更新中...

View File

@ -0,0 +1,28 @@
# 快速上手
## 环境准备
首先得有 node并确保 node 版本是 `10.13` 或以上mac/win 下推荐使用 n 来管理 node 版本)
```
$ node-v
v10.13.0
```
注:推荐使用 yarn 管理 npm 依赖
## 源码工程
| h5_plus(编辑器项目) | admin(管理后台) | Server(服务端项目) |
| ------------------- | --------------- | ------------------ |
本地拿到源码工程之后先安装对应依赖,在对应工程目录里执行 yarn 命令,等待依赖安装完成。
## 本地运行
1.首先本地启动 server在 src 目录的 index.js 中修改跨域白名单,改为本地的 ip+端口如http://192.167.0.3:8000
2.其次本地启动 h5_plus,启动完毕在浏览器打开对应的启动地址即可查看,如下:
<img src="../../img/common/home.png" alt="foo">

View File

@ -0,0 +1 @@
基本介绍 2

24298
package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

View File

@ -26,6 +26,8 @@
"build": "umi build",
"server": "node server.js",
"dev": "http-server dist",
"docs:dev": "vuepress dev doc",
"docs:build": "vuepress build doc",
"test-demo": "http-server dist",
"postinstall": "umi generate tmp",
"prettier": "prettier --write '**/*.{js,jsx,tsx,ts,less,md,json}'",
@ -126,6 +128,7 @@
"prettier": "^1.19.1",
"redux-logger": "^3.0.6",
"sass-loader": "^9.0.3",
"typescript": "^4.0.2"
"typescript": "^4.0.2",
"vuepress": "^1.8.0"
}
}