Echart:使用AngularJS对Tooltip显示的信息排序

源于

今天遇到一个需求,是这样:需要echart的图表在显示Tooltip的时候对数据进行排序,说干就干.另外一个问题是,项目是用的AngularJS,瞬间想起,我以前也搞过一段时间的AngularJS,无奈当时无用武之地,就此荒废了.于是去找文档补习了下AngularJS.

就搞定了这个需求.

echart中tooltip排序显示

源码

完整源码,效果可以自己运行
如果需要将AngularJS换成jQuery,只需要将formatterTooltip函数中的代码替换成jQuery语法即可.

Go:学习笔记整理

说明

下面是我在学习Go期间,整理的一部分数据(只记录了部分对我而言有用的),可以用作参考.不定期更新.

第一个Go程序

在Windows上安装Go,必须在系统环境变量中配置变量:GOPATH(值为Windows路径),Go只会编译执行GOPATH目录中的.go文件.

Go语言Logo

变量声明及类型

变量声明

在Go中变量声明,有如下方式:

1.
// 声明不赋值,使用默认值
var age int

2.
// 根据值判断类型
var vname = value

3.
// 省略var,左侧的变量不能已经被声明过.
vname:=value

多个变量

var age,info,name type
var age,info,name = a1,a2,a3
age,info,name := a1,a2,a3

var (
age type
name type
)

在同一个代码块中,age:=10只能存在一次(也就是不能在写一个age:=10);另外,在同一个代码块中如果定义了变量没有使用,编译会报错,给变量赋值也不行,变量必须要使用.

如果要交换两个变量的值,则可以直接:
a,b = b,a

常量

定义之后不会被修改的变量,定义方式:
const name = “job”
或者
const name string = “job”

类型

Go中有以下类型:

类型 描述
布尔 只有两个值,true或者false
数字 整型int和浮点型float.
字符串 一串字符表示,Go的字节使用UTF-8编码标识Unicode文本
派生 1.指针;2.数组;3.结构化类型(struct);4.联合体类;5.函数类型;6.切片类型 ;7.接口;8.Map类型;9.Channel类型

整数类型最大值与最小值(获取方式下面有调用示例)

类型 描述
uint8 最小值:0,最大值:调用math.MaxUint8
uint16 最小值:0,最大值:调用math.MaxUint16
uint32 最小值:0,最大值:调用math.MaxUint32
uint64 最小值:0,最大值:调用math.MaxUint64
int8 最小值:MinInt8,最大值:调用math.MaxInt8
int16 最小值:MinInt16,最大值:调用math.MaxInt16
int32 最小值:MinInt32,最大值:调用math.MaxInt32
int64 最小值:MinInt64,最大值:调用math.MaxInt64

调用示例

浮点类型:

类型 描述
float32 调用:math.MaxFloat32
float64 调用:math.MaxFloat32
complex64 调用:math.SmallestNonzeroFloat32
complex128 调用:math.SmallestNonzeroFloat64

Go时间格式化

Go是个奇葩!!!
我们一般的格式化是:yyyy-MM-dd HH:mm:ss,在Go中必须是这样:”2006-01-02 15:04:05″,嗯,你没看错,据说这个时间是Go诞生的时间.

那么使用格式化,例子来了:

WordPress:让站内资源使用相对路径

相对路径

好处:

  1. 引用站内资源,可以使加载速度更快一些;
  2. 更好的支持SSL(浏览器不会警告不安全信息);
  3. 别人复制数据直接粘贴,无法显示

Linux+Nginx+PHP+MySQL

插件和改代码

然后安装插件:Root Relative URLs
安装之后,然后修改该插件的sb_root_relative_urls.php文件中的函数为下面这个:

然后就可以了..
如果不修改第一个,只安装并启用了插件,会有资源访问不上.

搞定.

Go:解析JSON

开始

按照《Go语言编程》第五章的例子来的…(有很大改动,不然运行不了)
这本书是2012年左右出的,那时候Golang还没出1.0版本.
而现在Golang已经1.8版本了,改了不少东西才能正常的跑起来……
大概2017-03-11 0:30 开始写的…
这会3:15
……

搞完静态文件(就一个妹子UI的CSS),
已经3.40了…

还查了不少golang的文档,这下算是入坑了..

这是昨天改的一个梨子,也先贴一下吧.

Go相册网站程序

还有个问题,就是上传的图片名称会多一段数字,暂时没处理,但是不影响查看。
使用Go版本1.8

Go相册程序目录结构
uploads目录下面的文件是上传的,上传之后就可以看到了

列表页:list.html

上传页面:upload.html

还有一个文件是妹子UI的css,可以在网上直接保存一份(ctrl+s),只是保存到指定目录就可以.[参考地址]

Go语言Logo

解析JSON数据

JSON解析成Go结构体,可以使用这个工具,直接获取相关结构体

源码如下(优先从网络获取数据,若从网络获取、解析失败,则直接使用本地数据[网络获取的数据与本地数据一样]):

Linux:配置SSL遇到的问题

问题是这样的

环境:Centos,Flask,Let’s Encrypt.

使用下面的方式,来安装SSL,发现在Wordpress程序上没有任何问题,而在安装Flask程序时,则出现了问题。具体往下看。

在Flask程序上申请SSL证书,出现下面的提示:

Failed authorization procedure.
The following errors were reported by the server

众所周知,Flask的目录结构是:

Flask项目目录结构

在使用

命令之后,如果输入的是/flaskxxx这个目录,那么就会生成红色框内的目录(Let’s Encrypt会在网站根目录生成一个目录里面会放一个验证程序[类似于验证文件],随后程序会进行访问相关地址进行匹配),用过Flask的都知道,这个红色的目录肯定是不对的(Flask一般读取templates目录下面的文件)。

所以,在Flask上申请SSL的时候,就遇到了这个问题。

我们只能从侧面去解决这个问题。

Linux+Nginx+PHP+MySQL

解决方案

在你的Flask文件中加入下面的代码,然后再次执行

就可以实现验证,也就可以申请到SSL证书了。

修改Python文件之后,如果使用的是uwsgi+nginx架构,只需要重启uwsgi即可.

折腾一下午这个问题……

另外,下午将目前的几个站全都升级了SSL。只是遗憾的是,国内的淘宝联盟不支持SSL,代码只能显示空白了。(百度统计,CNZZ都支持SSL,而51LA目前还不支持SSL),还好GG支持SSL,直接就可以用了。