Hexo中引入Echarts
Swift Lv6

最近发现一个插件hexo-tag-echarts,可以在Hexo中引入Echarts。

插件安装

  1. npm安装
1
npm install hexo-tag-echarts --save
  1. 添加cdn外链

node_modules/hexo-tag-echarts/echarts-template.html文件中添加如下一行:

1
<script src="https://github.com/TransformersWsz/TransformersWsz.github.io/releases/download/echarts/echarts.min.js"></script>

示例

原理

index.js文件内容如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
var fs = require('fs'),
path = require('path'),
_ = require('underscore');

var filePath = path.join(__dirname, 'echarts-template.html');

function echartsMaps(args, content) {

var template = fs.readFileSync(filePath).toString(),
options = {};

if (content.length) {
var options = content;
}

// Output into
return _.template(template)({
id: 'echarts' + ((Math.random() * 9999) | 0),
option: options,
height: args[0] || 400,
width: args[1] || '81%'
});
}


hexo.extend.tag.register('echarts', echartsMaps, {
async: true,
ends: true
});

  • args 接收参数 {% echarts 400 '90%' %}
  • content 接收具体的数据信息

详细的数据流是这样的:

index.js拿到markdown里的参数和数据,进行一些处理,然后将对应的字段渲染到echarts-template.html中。

Powered by Hexo & Theme Keep
Unique Visitor Page View