vditor 自建 cdn 之后,基本功能是可以使用的,但是有部分功能还是会走线上的 cdn

vditor 自建 cdn 之后,基本功能是可以使用的,但是有部分功能还是会走线上的 cdn,比如导出 pdf 功能,还是会走下面这个 cdn,会请求不到资源,导出 pdf 的功能就用不了。还有自定义按钮图标名字的问题(比如我改了上传文件功能为上传图片,结果上传图标看不到了,但是功能正常)。这种问题应该怎么解决呢?

image.png

image.png

  • Vditor

    Vditor 是一款浏览器端的 Markdown 编辑器,支持所见即所得、即时渲染(类似 Typora)和分屏预览模式。它使用 TypeScript 实现,支持原生 JavaScript、Vue、React 和 Angular。

    314 引用 • 1667 回帖 • 1 关注

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • qiaoguoxing

    好的,我都加一下

  • qiaoguoxing 3 评论

    846c0554b335a84e7d69b8079a7644c.png

    d9f2a0e16194fef88d9fee4fd6f6e07.png

    @88250 @Vanessa 两位大佬,拉了最新源码之后,本地自建 cdn,导出 pdf 还是走的 unpkg。

    没有问题,你需要运行一下 npm run build
    Vanessa
    我 build 重新打 dist 了,缓存也清了几次了,还把版本升到最新了,不知道为啥还是不行,有空我捋捋源码,暂时把导出隐藏了。
    qiaoguoxing
    @Vanessa 我看文档里面给的预览的配置是 Vditor.preview,我用的是 import VditorPreview from 'vditor/dist/method.min',用的 VditorPreview.preview(),就是预览跟编辑是分开的方法,里面分别配置了一套 option,但是都写了 cdn,不知道是不是这个原因导致的?
    qiaoguoxing
  • qiaoguoxing 17 评论

    image.png

    image.png

    编辑写在我自己的 initEdit()方法里面的,配置了 option 的本地 cdn。

    image.png

    image.png

    预览又写在了我的 initView()方法里面,也配了本地 cdn。

    @88250 @Vanessa 是不是我这种操作不对 😂

    点导出 pdf,只有 lute 那一个还是线上 cdn,其他导出的时候请求的 css 资源看都走本地 cdn 了。
    qiaoguoxing
    @qiaoguoxing 导出需要去 github 上面自己编译最新代码,还没有发布
    Vanessa
    @Vanessa 我是在 github 的 master 分支拉了最新的代码,用最新的代码在本地 npm run build 打包的的,然后把 dist 文件放到我项目里面的,还有啥编译操作吗?
    qiaoguoxing
    @qiaoguoxing 这样就可以了。我在本地这样操作导出 pdf 是没有 unpkg 的请求了。
    Vanessa
    @Vanessa 有点奇怪了,我这只有 lute 这个文件一直走 unpkg,有空我再研究研究。
    qiaoguoxing
    @qiaoguoxing _lutePath 是不是设置过这个参数
    Vanessa
    @Vanessa 没有,就是完全按照之前发的 Issue #1522 · Vanessa219/vditor 这个来配的,其他就是把 npm 安装的 vditor 版本升到最新的"vditor": "^3.9.7",别的什么都没配了。
    qiaoguoxing
    @qiaoguoxing 要按照上面的 “导出需要去 github 上面自己编译最新代码,还没有发布”
    Vanessa
    @Vanessa 额,上面说的“我是在 github 的 master 分支拉了最新的代码,用最新的代码在本地 npm run build 打包的的,然后把 dist 文件放到我项目里面的,还有啥编译操作吗?”已经拉最新源码,重打 dist 放到本地了。
    qiaoguoxing
    @Vanessa 这几天有点忙,暂时把导出功能去掉了,不影响项目,麻烦大佬看了,感谢。。等有时间,我看看源码,找找原因,正好学习学习。。
    qiaoguoxing
    @qiaoguoxing 看你说的是升级到 3.9.7。我看了下最新代码本地运行后是没有问题的,你有空再看看吧,有什么问题再 at 我就可以了。
    Vanessa
    @Vanessa 好的,感谢大佬!
    qiaoguoxing
    @Vanessa 大佬我用 npm 也是吧 vditor 安装到了 3.9.7 版本,GitHub 也是拉取的最新代码,cdn 那些配置的东西也都配置完了。在初始化组件时,请求都是走的本地的,但是在导出 PDF 时,lute.min.js、zh_CN.js、ant.js、light.css、github.css 这些请求还是走的线上的
    north999
    @north999 等明天发 3.9.8
    Vanessa
    @Vanessa V 姐 我换成 3.9.8 版本后还是出现之前那些问题 貌似没有解决
    north999
    @north999 是导出 PDF 还有 unpkg 嘛?配置了没有? 具体操作步骤和现象是?
    Vanessa
    @Vanessa 对 导出 pdf 还是请求的 unpkg
    north999
  • north999

    这是导出 pdf 的请求

    b72a6f8315545676c2d8e098bd7794f.png

    6e16391b29d733fea546f5c9bd60190.png

    cdn 配置

    image.png

    之前用的旧版本的 vditor 没有问题 现在换上 3.9.8 版本的出现了问题 就是上传音频文件时报错了

    image.png

  • north999

    使用新版本的 vditor 导出 pdf 功能还是请求的线上

  • north999
    1 回复
  • Vanessa 2 评论

    我这里是正常的,实在不行的话只能在 https://github.com/Vanessa219/vditor/blob/8763b61b9d9d15f8b916e86882c696747deb63c2/src/ts/export/index.ts#L37 打断点你们单步调试一下

    viditor 预览模式,支持点击图片查看大图功能吗?
    Ljp0605
    @Ljp0605 单击图片即可
    Vanessa
  • lujiangbo
    
    # vditor 删除npm中的安装包 拉取最新代码编辑后打包 放到common/vditor目录下
    
    

    导出 prd 的时候还是采用的线上的 cdn,访问不到 lute.min.js 导致报错不能正常显示
    https://gitee.com/vanessali/vditor
    src/ts/export/index.ts 中的 exportPDF 方法
    Vditor.preview 的第三个配置参数中增加如下代码:
    cdn: "${vditor.options.cdn}",
    theme: {
    current: "${vditor.options.preview.theme.current || 'light'}",
    path: "$${vditor.options.cdn}/dist/css/content-theme"
    },
    emojiPath: "${vditor.options.cdn}/dist/images/emoji",
    打包后复制其 package.json 和 dist 到同一个文件夹下即可,为了压缩包提把 dist 目录下的 js 和 ts 都删除
    为了导出 prd,重新在拉起线上代码,在导出的时候重新修改了代码才让其导出预览采用了自定义的 cdn

    
    ![Alt text](image.png)
    
  • lujiangbo

    image.png

  • Praise

    不用自己下载,全局替换 unpkg.com 为 s4.zstatic.net/npm 就可以解决了

请输入回帖内容 ...

推荐标签 标签

  • CSDN

    CSDN (Chinese Software Developer Network) 创立于 1999 年,是中国的 IT 社区和服务平台,为中国的软件开发者和 IT 从业者提供知识传播、职业发展、软件开发等全生命周期服务,满足他们在职业发展中学习及共享知识和信息、建立职业发展社交圈、通过软件开发实现技术商业化等刚性需求。

    14 引用 • 155 回帖
  • Ant-Design

    Ant Design 是服务于企业级产品的设计体系,基于确定和自然的设计价值观上的模块化解决方案,让设计者和开发者专注于更好的用户体验。

    17 引用 • 23 回帖 • 3 关注
  • BookxNote

    BookxNote 是一款全新的电子书学习工具,助力您的学习与思考,让您的大脑更高效的记忆。

    笔记整理交给我,一心只读圣贤书。

    1 引用 • 1 回帖
  • Mobi.css

    Mobi.css is a lightweight, flexible CSS framework that focus on mobile.

    1 引用 • 6 回帖 • 697 关注
  • API

    应用程序编程接口(Application Programming Interface)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。

    76 引用 • 421 回帖
  • 反馈

    Communication channel for makers and users.

    123 引用 • 906 回帖 • 193 关注
  • Wide

    Wide 是一款基于 Web 的 Go 语言 IDE。通过浏览器就可以进行 Go 开发,并有代码自动完成、查看表达式、编译反馈、Lint、实时结果输出等功能。

    欢迎访问我们运维的实例: https://wide.b3log.org

    30 引用 • 218 回帖 • 605 关注
  • 深度学习

    深度学习(Deep Learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。

    40 引用 • 40 回帖 • 2 关注
  • 博客

    记录并分享人生的经历。

    270 引用 • 2386 回帖 • 1 关注
  • MySQL

    MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 公司。MySQL 是最流行的关系型数据库管理系统之一。

    675 引用 • 535 回帖
  • danl
    63 关注
  • Sphinx

    Sphinx 是一个基于 SQL 的全文检索引擎,可以结合 MySQL、PostgreSQL 做全文搜索,它可以提供比数据库本身更专业的搜索功能,使得应用程序更容易实现专业化的全文检索。

    1 引用 • 181 关注
  • JavaScript

    JavaScript 一种动态类型、弱类型、基于原型的直译式脚本语言,内置支持类型。它的解释器被称为 JavaScript 引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在 HTML 网页上使用,用来给 HTML 网页增加动态功能。

    710 引用 • 1173 回帖 • 171 关注
  • iOS

    iOS 是由苹果公司开发的移动操作系统,最早于 2007 年 1 月 9 日的 Macworld 大会上公布这个系统,最初是设计给 iPhone 使用的,后来陆续套用到 iPod touch、iPad 以及 Apple TV 等产品上。iOS 与苹果的 Mac OS X 操作系统一样,属于类 Unix 的商业操作系统。

    84 引用 • 139 回帖
  • Ubuntu

    Ubuntu(友帮拓、优般图、乌班图)是一个以桌面应用为主的 Linux 操作系统,其名称来自非洲南部祖鲁语或豪萨语的“ubuntu”一词,意思是“人性”、“我的存在是因为大家的存在”,是非洲传统的一种价值观,类似华人社会的“仁爱”思想。Ubuntu 的目标在于为一般用户提供一个最新的、同时又相当稳定的主要由自由软件构建而成的操作系统。

    123 引用 • 168 回帖
  • SOHO

    为成为自由职业者在家办公而努力吧!

    7 引用 • 55 回帖 • 92 关注
  • Kotlin

    Kotlin 是一种在 Java 虚拟机上运行的静态类型编程语言,由 JetBrains 设计开发并开源。Kotlin 可以编译成 Java 字节码,也可以编译成 JavaScript,方便在没有 JVM 的设备上运行。在 Google I/O 2017 中,Google 宣布 Kotlin 成为 Android 官方开发语言。

    19 引用 • 33 回帖 • 27 关注
  • 机器学习

    机器学习(Machine Learning)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。

    76 引用 • 37 回帖
  • Laravel

    Laravel 是一套简洁、优雅的 PHP Web 开发框架。它采用 MVC 设计,是一款崇尚开发效率的全栈框架。

    19 引用 • 23 回帖 • 686 关注
  • frp

    frp 是一个可用于内网穿透的高性能的反向代理应用,支持 TCP、UDP、 HTTP 和 HTTPS 协议。

    15 引用 • 7 回帖 • 10 关注
  • 程序员

    程序员是从事程序开发、程序维护的专业人员。

    533 引用 • 3528 回帖
  • Java

    Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的。Java 技术具有卓越的通用性、高效性、平台移植性和安全性。

    3168 引用 • 8207 回帖
  • webpack

    webpack 是一个用于前端开发的模块加载器和打包工具,它能把各种资源,例如 JS、CSS(less/sass)、图片等都作为模块来使用和处理。

    41 引用 • 130 回帖 • 295 关注
  • Bootstrap

    Bootstrap 是 Twitter 推出的一个用于前端开发的开源工具包。它由 Twitter 的设计师 Mark Otto 和 Jacob Thornton 合作开发,是一个 CSS / HTML 框架。

    18 引用 • 33 回帖 • 684 关注
  • 分享

    有什么新发现就分享给大家吧!

    242 引用 • 1748 回帖 • 1 关注
  • Maven

    Maven 是基于项目对象模型(POM)、通过一小段描述信息来管理项目的构建、报告和文档的软件项目管理工具。

    185 引用 • 318 回帖 • 344 关注
  • JSON

    JSON (JavaScript Object Notation)是一种轻量级的数据交换格式。易于人类阅读和编写。同时也易于机器解析和生成。

    51 引用 • 190 回帖