保存文件更人性化,必须按照流程,生成->下载
js行为都放在一起