首页
学习
活动
专区
圈层
工具
发布

在 hexo 中无痛使用本地图片

1 起因 在 hexo 中使用本地图片是件非常让人纠结的事情,在 markdown 里的图片地址似乎永远无法和最后生成的网页保持一致。...这些问题使得我一度不愿意使用本地图片而选择用图床,但被移动运营商无耻的横条广告逼得打算上 https,图床只支持 http 就成了问题。...显然这样在本地的编辑器里完全不能正确识别图片的位置。...1.2 asset-image 在 hexo 2.x 时出现的插件,后来被吸纳进 hexo 3 core ,用法的介绍见 资源文件夹 | Hexo 。...比较尴尬的是,这种方法直接放弃了 markdown 原来的语法,使用类似 的语法,。markdown 本来有插入图片的语法不好好支持,专门用一个新的语法来插入本地图片,让我这种强迫症不太能接受。

2.8K100
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Windows Phone Developer Tools RTW 新特性-Pivot控件

    枢轴(Pivot)控件提供了一种快速的方式来管理应用中的视图或页面。枢轴可以用来过滤大的数据集,浏览多个数据集,或者切换应用视图。枢轴控件水平并且相邻放置独立的视图,同时管理左侧和右侧的导航。...程序设计时,对于的Pivot考虑: 应用程序应该使得pivot页最少。 pivot页面的内容由应用程序定义。 pivot页面是循环的。...枢轴控件应该只用来显示相同类型的条目或者数据。 该控件不应该用来做任务流程。不同的页面应该在外观方面具备无缝切换。页面不应该极大地改变用户的活动。 枢轴控件应该少使用,在适当情况下才使用。...3.在MainPage.xaml文件中,为ContentPanel加入新的元素,代码如下: 中,为其加入一个新的PivotItem,代码如下: <!

    86260

    Angular中ui-select的使用

    Angular中ui-select的使用 最近工作一直很忙,没有时间整理知识,前几天项目中需要用到angular-ui-select,实现下拉框快速过滤效果,今天有时间研究了一下,终于搞明白了。...如果项目中用到的Angular版本比较低时,请安装低版本的Angular-sanitize和Angular-ui-select,这样,避免低版本不支持的情况。...2.安装方法: 使用npm进行安装 npm install Angular-sanitize@1.2.28 --save -dev @+版本号表示安装指定版本的包文件,如果不加版本号,默认安装最新的版本...> 10 11 ui-select> ui-select-match  匹配所输或所选项在文本框展示 ui-select-choices  下拉列表的展示 ng-bind-html...当然ui-select不止这一种用法,还有许多意想不到的功能。本实例和其他功能实现在github:https://github.com/lela520/angular-ui-select。

    3.5K60

    在Hexo中引入本地图片的实现

    # 在项目根目录下执行 npm install https://github.com/xcodebuild/hexo-asset-image.git --save 完成上述配置后,在使用命令hexo new...,用于保存在文章中引入的本地图片资源 |____themes 如上,新建“测试文章.md”时,将会在_posts目录下创建同名文件夹“测试文章”,在“测试文章.md”文件中需要引入的图片文件只要放在目录...图片引用方式: # 引用图片的时候一定要带上目录名称作为路径 ![本地图片](测试文章/本地图片.jpg) 使用该方式引用的图片既可以在本地预览,正式发布之后也能正常显示。...原理说明 显然,在hexo中引入图片的方式稍微有点繁琐,即:必须在_post目录下新建一个与文章同名的目录,然后将需要引用的图片文件都放在该目录中。...另外,转换后的index.html文件保存路径中有一个年/月/日,这是在项目配置文件_config.yml的permalink参数中配置的,默认值为: permalink: :year/:month/:

    2.3K20

    vue中vuex,echarts,地图,ueditor的使用

    UI+map+node-sass; 功能模块:数据可视化,地图,普通表格的增删,可编辑表格,合并表格,左侧菜单可展收; 适配:使用百分比布局,适配pc所有机型; 目的:项目开发可以快速复用的项目模板;...:地图展示 7.ueditor:富文本编辑器 8.utiles:里面封装了常用工具类 9.element UI+slot:可编辑表格 10.table:原生table实现表格拆分,展示复杂数据 github...中的使用 两种方法: this....放到static目录下,在main.js引入,在对应的vue文件中 this.editor = UE.getEditor('editor', this.config); // 初始化UE this.editor.addListener...}); this.editor.getContent()//获取富文本内容 5.4 地图 我是使用高德地图,在index.html全局导入 <script src="http://webapi.amap.com

    2.2K30

    jQuery ui中sortable draggable droppable的使用

    "ui-state-highlight", // 排序过程中占位符的class样式设置 forcePlaceholderSize: true, // 强迫占位符有一个尺寸大小。...// connectToSortable: "#subs-box", // 允许draggable被拖拽到指定的sortables中。...// 拖动时使用的是clone的元素。如果值设置为"clone", 那么该元素将会被复制,并且被复制的元素将被拖动。...// 之所以不使用 helper: 'clone', 是因为clone的元素没有样式,所以我们需要自定义样式,所以使用了自定义函数。...否则第一次初始化后,比如某个地方A可以放置拖拽的元素,但是第二次初始化后,地方A就不可以放置了。然而实际上,如果你不把第一次初始化的dropInit函数销毁掉,地方A在第二次初始化后还是可以放置的。

    2.6K10

    在 JavaScript 中优雅的提取循环内的数据

    翻译:疯狂的技术宅 http://2ality.com/2018/04/extracting-loops.html 在本文中,我们将介绍两种提取循环内数据的方法:内部迭代和外部迭代。...它是 for-of 循环和递归的组合(递归调用在 B 行)。 如果你发现循环内的某些数据(迭代文件)有用,但又不想记录它,那应该怎么办?...内部迭代 提取循环内数据的第一个方法是内部迭代: 1const fs = require('fs'); 2const path = require('path'); 3 4function logFiles...请注意,在生成器中,必须通过 yield* 进行递归调用(第A行):如果只调用 logFiles() 那么它会返回一个iterable。...但我们想要的是在该 iterable 中 yield 每个项目。这就是 yield* 的作用。

    4.4K20

    在chromev8中的JavaScript事件循环分析

    每一个消息都关联着一个用以处理这个消息的回调函数。 在事件循环期间的某个时刻,运行时会从最先进入队列的消息开始处理队列中的消息。被处理的消息会被移出队列,并作为输入参数来调用与之关联的函数。...我们可以通过使用 Loupe(Loupe是一种可视化工具,可以帮助您了解JavaScript的调用堆栈/事件循环/回调队列如何相互影响)工具来了解上面代码的执行情况。...在事件循环中,每进行一次循环操作称为tick,每一次tick的任务处理模型是比较复杂的,但关键步骤如下: 执行一个宏任务(栈中没有就从事件队列中获取) 执行过程中如果遇到微任务,就将它添加到微任务的任务队列中...接下来会会执行 UI渲染工作(如果有的话),然后开始下一轮 event loop, 执行setTimeout的回调,输出setTimeout 最后的执行结果如下 [执行结果.png] 总结 js的异步的实现有赖于事件循环的支撑...以上就是对于在浏览器内核中对于js事件循环的处理,当然了对于nodejs来说又是另一种实现方式,这个下回分解

    4.4K40

    python range在for循环里的用法_PyThon range()函数中for循环用法「建议收藏」

    大家好,又见面了,我是你们的朋友全栈君。...最初range和xrange都生成可以用for循环迭代的数字,然而在python2和3里实现方式并不完全一致,下面着重讲讲python3的range()函数for循环用法。...例如:range(0, 5) 等价于 range(0, 5, 1) 3、在python3.8下>>> print(list(range(5))) #从0开始,有5为正整数,到5结束,不包括5;步长=step...执行结果:xgj@xgj-PC:~$ /usr/bin/python3.8 /home/xgj/Desktop/cy.py r u n o o b xgj@xgj-PC:~$ 注意:以上为正整数,升序的顺序...以上就是python里range()函数的用法,顺带给大家演示了在python2和python3里的不同。好啦~如果想要了解更详细的实用教程,可以点击查看PyThon学习网视频教程。

    4.2K30

    EasyDSS开发中Go语言在for循环中使用协程的注意事项

    之前我们介绍过EasyDSS开发中对野协程的管理,有兴趣的朋友可以了解一下:EasyDSS协程出现panic并导致程序退出,如何对野协程进行管理?...在 EasyDSS 的程序开发中,有时为了加快速度,会在 for 循环中采用协程的方式进行代码编写,类似代码如下: wg := sync.WaitGroup{} wg.Add(length) for s...for 循环进入下一次循环,此时 s 的值被改变,因此会导致发的包会乱序。...)) } }() defer wg.Done() sender.WriteRtcPacket(pkt) }(s) } wg.Wait() 在代码的最开始加上...总结以下在写协程的时候主要注意两点: 1.保证捕获协程中的 panic 异常; 2.在协程中使用外部的变量时,应该以传参的方式传递到协程中。

    1.9K30

    Java 中为什么不推荐在 while 循环中使用 sleep()

    前言最近逛 CSDN 看到一篇文章,文章大意是说为什么在循环中不推荐使用 sleep 操作,原因在于线程挂起和唤醒会有很大的性能消耗,并推荐使用 Timer 及 ScheduledExecutorService...sleep 可能会导致忙等待 // 如 FLAG 变量状态未改变 那么线程可能一直循环,并不断进行线程挂起和唤醒原因是否正确主要原因和原文博主所说有很大的关系但不完全正确:我们都知道 Java 线程实际对应着操作系统中的一个线程...比如微服务体系中,客户端上报实例状态,或者服务端检测客户端状态都会使用定时轮询的机制。...比如一些用户登录场景,当用户登录状态改变时,发送登录事件进行后续处理,比如登录通知等等等待和唤醒等待和唤醒机制一般适用于等待时间较长的场景,因为等待和唤醒是一个性能消耗比较大的操作;在等待时间不是很长的场景可以使用轮询机制...在 Java AQS 等待获取锁和线程池任务为空等待新任务时,会使用等待和唤醒操作轮询机制 和 等待和唤醒 一般会结合使用,避免线程频繁的挂起和唤醒。

    2.4K30
    领券