『贴代码』
我的博文
个人作品
优选问答
「搜索」
【本期话题】更多
三人寄语更多
能通过内网IP访问的,尽量不要使用域名访问!
点赞:1
需求就是系统的千年杀,相爱相杀那种!
点赞:0
对于答案来说,更重要的是找到答案的这个过程而不是答案本身!
点赞:0
慎用redis的同步我的意见是redis都走异步!!!
点赞:0
抛开需求谈架构是无意义的事情!
点赞:0
由于时间的问题,我们往往会给自己埋坑,等着后续或者下一任来填!
点赞:0
时好时坏的结果,往往是多线程引起的逻辑混乱导致的!
点赞:0
往往会为了一个项目,搭建适合他专属的脚手架!
点赞:1
抛开需求讲架构,和纸上谈兵无差!
点赞:1
设置后,UI不会变更,要不给他一个SetTimeout试试,原因自己想
点赞:0
贴代码框架PasteForm特性介绍之markdown和richtext
尘埃 2024-11-17 686 51 0
Richtext和Markdown在我们实际的管理端中还是有使用场景的,那么在PasteForm中,如何让UI渲染成Richtext或者Markdown呢? 又支持怎么样的扩展设置,看这篇文章就够了!

更多特性PasteForm的介绍,请前往PasteForm操作文档查看 PasteForm操作文档与介绍


;

简介

PasteForm是贴代码推出的 “新一代CRUD” ,基于ABPvNext,目的是通过对Dto的特性的标注,从而实现管理端的统一UI,借助于配套的PasteBuilder代码生成器,你可以快速的为自己的项目构建后台管理端!目前管理端只有Html+js版本的,后续将支持小程序,Vue等


——— 点我访问PasteForm框架文档 ———

案例源码

案例源码在

https://gitee.com/pastecode/paste-template

不定期升级

AllInDto!

通过引入PasteForm,一个项目哪怕100个数据表,一般的管理页面也才不到10个,除非有非常多的特殊功能,否则都能用PasteForm中的表格和表单来实现!

图片alt

MarkDown

在开发管理端过程中,有时候也需要使用用到Markdown,之前已经接入了Richtext,本次升级也一并把这个带进去了!
首先你需要从案例项目的PasteTemplate的前端模块
PasteTemplate.HttpApi.Host/wwwroot/page/lib/editor.md/
注意这个里面就是Markdown用到的组件,用的是三方的!

特性信息

如果是字符串,没有设置maxlength,默认就会变更成richtext,也可以手动强制配置,当前特性适用于richtext和markdown

字段 类型 示例 说明
args1 字符 500 配置高度,默认为500
args2 字符 txt 表示另外一个值存储在哪个字段,所以另外一个字段一般设置隐藏
args3 字符 /api/app/Upload/Image 图片上传的地址

以上信息同样适用于richtext

案例UI

图片alt

以上是我用双屏截图的,其实是一个完整的页面,注意看页面的表单中包含了text,textarea,richtext,markdown
那么他对应的dto是如何写的?

Dto对应代码

    /// <summary>
    /// 
    /// </summary>
    public class StringDto
    {
        ///<summary>
        ///姓名 模拟短文本输入
        ///</summary>
        [MaxLength(32)]
        [Required]
        public string Name { get; set; }

        ///<summary>
        ///文本区域 模拟文本区域的输入
        ///</summary>
        [MaxLength(128)]
        public string Desc { get; set; }

        ///<summary>
        ///文本区域 长度大于128则自动为textarea
        ///</summary>
        [MaxLength(256)]
        public string Text { get; set; }

        /////<summary>
        /////文本区域 可以手动指定为textarea,同理你也可以指定为html,text
        /////</summary>
        //[MaxLength(128)]
        //[ColumnDataType("textarea")]
        //public string Mark { get; set; }

        ///<summary>
        ///富文本 模拟富文本,前端HTML的是使用wangEditv5,默认不配置maxlength的就是html
        ///</summary>
        public string Blog { get; set; }

        /////<summary>
        /////MarkDown1 
        /////</summary>
        //[ColumnDataType("markdown")]
        //public string Mark1 { get; set; }

        ///<summary>
        ///MarkDown2 有默认值的
        ///</summary>
        [ColumnDataType("markdown")]
        public string Mark2 { get; set; } = "## 今日成果";

    }

由上面代码可知,只要在对应的字段上配置
[ColumnDataType(“markdown”)]即可
或者你也可以配置特性为[PasteMarkDown]
他们两个是等效的,可以说ColumnDataTypeAttribute是所有贴代码框架特性的基础属性
像PasteClass,PasteHidden,PasteButton等最终都是为了转化成ColumnDataTypeAttribute

提交信息

上面的UI中,我们是随便填写点东西后,提交,看到的提交信息如下
图片alt
暂时先忽略mark2mdeditor-html-code和mark2mdeditor-markdown-doc字段,这个是markdown框架里面带了name被parseform来了,后续再考虑去掉他!
从上面的提交可以看到mark2是有内容的!

符合预期!

注意

由于markdown和richtext的特殊性,关于字段长度的设置需要按照实际来填写!
看特性信息args2,这个字段如何配置了,则需要对这个字段的特性标注为hidden
这样在UI上args2的字段是不显示的,而提交数据给后台,则可以接收到!

我们下期将介绍select和reload的巧妙结合案例… .. .

评论列表
尘埃
51 686 0
快捷注册
热门推荐更多
PasteSpiderFile
PasteSpider的项目文件客户端,开发中能够快速发布!;
最新动态
  • 165.****.82 正在查看 Postgresql的安装 !
  • 165.****.82 正在查看 Postgresql的安装 !
  • 50.****.220 正在查看 记PasteSpider部署工具的Windows.IIS版本开发过程之草稿-需求分析(1) !
  • 50.****.220 正在查看 记PasteSpider部署工具的Windows.IIS版本开发过程之草稿-需求分析(1) !
  • 204.****.21 正在查看 PasteSpider更新摘要,持续更新 !
  • 204.****.21 正在查看 PasteSpider更新摘要,持续更新 !
  • 51.****.53 正在查看 PasteSpider管理端从开始配置到使用 !
  • 51.****.53 正在查看 PasteSpider管理端从开始配置到使用 !
  • 1.****.152 正在查看 PasteSpiderV5版本更新内容一览 !
  • 1.****.152 正在查看 PasteSpiderV5版本更新内容一览 !
  • 197.****.28 正在查看 PasteTemplate和PasteBuilder的使用教程 !
欢迎加入QQ讨论群 296245685 [PasteSpider]介绍 [PasteForm]介绍 @2022-2023 PasteCode.cn 版权所有 ICP证 闽ICP备2021013869号-2