asp.net core 添加百度编辑器(ueditor)

百度编辑器:https://ueditor.baidu.com/website/download.html

git地址:https://github.com/fex-team/ueditor

有选择困难症的可以直接点这里下载:下载

下载完之后放在项目的wwwroot里面:

引用:

在需要使用的页面头部上添加以下代码:

<script type="text/javascript" charset="utf-8" src="~/lib/ueditor/ueditor.config.js"></script>
<script type="text/javascript" charset="utf-8" src="~/lib/ueditor/ueditor.all.js"></script>
<!--建议手动加在语言,避免在ie下有时因为加载语言失败导致编辑器加载失败-->
<!--这里加载的语言文件会覆盖你在配置项目里添加的语言类型,比如你在配置项目里配置的是英文,这里加载的中文,那最后就是中文-->
<script type="text/javascript" charset="utf-8" src="~/lib/ueditor/lang/zh-cn/zh-cn.js"></script>

页面编辑器位置:

<script id="editor" type="text/plain" style="width:1024px;height:500px;">
                </script>

底部加载:

//实例化编辑器
    //建议使用工厂方法getEditor创建和引用编辑器实例,如果在某个闭包下引用该编辑器,直接调用UE.getEditor('editor')就能拿到相关的实例
    var ue = UE.getEditor('editor');


    function getContent() {
        return UE.getEditor('editor').getContent();
    }

其实就可以运行了,但是还要配置以下上传的服务,asp.net core已经不使用web.config来配置,都是通过startup来注入服务:

在Startup.cs的ConfigureServices方法中添加UEditorNetCore服务

public void ConfigureServices(IServiceCollection services)
{
  //第一个参数为配置文件路径,默认为项目目录下config.json
  //第二个参数为是否缓存配置文件,默认false
  services.AddUEditorService();
}

添加Controller用于处理来自UEditor的请求

我不是很喜欢在controller里面专门加一个控制器处理,所以在API里面加了这个控制器

[Route("api/[controller]")]
    public class UEditorController : ControllerBase
    {
        private UEditorService ue;
        public UEditorController(UEditorService ue) {
            this.ue= ue;
        }

        public void Do() {
            ue.DoAction(HttpContext);
        }
    }

修改前端配置文件ueditor.config.js以引用这个api处理控制器

serverUrl:"/api/UEditor"

由于asp.net.core都以json配置一些参数

需要在项目配置config.json的文件

"imageUrlPrefix": "/", /* 图片访问路径前缀 */
"imagePathFormat": "upload/image/{yyyy}{mm}{dd}/{time}{rand:6}",
至此就完成了。具体的demo可以git上有。

https://github.com/chenderong/UEditorNetCore

可以直接此处下载

Ueditor是由百度web前端研发部开发所见即所得的编辑器,具有轻量,可定制,注重用户体验等特点。Ueditor基于BSD开源协议,除了具有代码精简、加载迅速的轻量级特质外,还采用了分层理念,使开发者可以根据实际应用和需求自由定制。 Ueditor编辑器划分为了三层架构。其中,核心层为开发者提供了诸如range、selection、domUtils类的底层API接口,中间的命令插件层不仅提供了大量的基础command,还允许开发者基于核心层进行command命令的开发,而面向用户端的界面层则可以提供自由定制的用户交互界面。Ueditor开源编辑器这种拥有可配性的模式,令开发者能够根据自身需要接入任何一层进行开发。 百度编辑器 v1.4.3 更新日志: 修复hasContents接口在非ie下只有空格时判断还为真的问题 修复在粘贴word内容时,会误命中cm,pt这样的文本内容变成px的问题 优化删除编辑器再创建编辑器时,编辑器的容器id发生变化的问题 修复提交jsonp请求时,callback参数的xss漏洞 新增jsp后台多种服务器配置下的路径定位 修复ZeroClipboard的flash地址参数名称错误 修复getActionUrl的bug 整理配置参数,把遗漏在代码中的配置项整理到ueditor.config.js里 修复图片拉伸工具和编辑拉伸长高器的样式冲突 修复文字的unicode编码会被错误再次解析问题 添加消息提示功能,冒泡提示信息 优化上传功能提示,当后端配置项没正常加载,禁用上传功能 修复单图上传按钮和jqueryValidate不兼容的问题 简化了与jqueryValidate的结合操作,具体看_examples/jqueryValidateDemo.html 修复在删除编辑器后,再次创建时丢失原有id的问题 修复查找替换在一些块节点中会导致替换错误
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值