基本完成了所有前端工作