2017-3-23_工作报告

工作内容

  • 用vue重构ifish编辑水产品详细信息管理页面的保存以及基础信息搜索还有pdf文件上传的功能
QQ20170323-225733.png

可以直接在表单上输入内容用ajax加载搜索项,比原来的页面要方便

remoteMethod(query) {
        if (query !== '') {
          this.sLoading = true;
          axios.get(`${API.ifish_baseinfo_list}?name=${query}&categoryId=`)
            .then((res) => {
              this.searchBaseInfoList = res.data.content;
              this.sLoading = false;
            });
        }
      },

保存编辑的表单

loadData(id) {
        axios.get(`${API.ifish_aquatic_show}/${id}`)
        // load数据前先将搜索基础信息select option初始以便将获取的id值转成对应的中文显示
          .then((res) => {
            this.searchBaseInfoList.push({
              id: res.data.aquaticBaseInfoId,
              commonName: res.data.commonName,
              aquaticCategoryName: res.data.categoryChineseName
            });

            // 覆盖初始化数据
            /* eslint-disable */
            for (let key in this.dataInfo) {
              if (Object.prototype.hasOwnProperty.call(this.dataInfo, key)) {
                // 如果ajax取得的数据为空就不覆盖,防止post提交后端数据解析错误
                if (res.data[key] !== null) {
                  this.dataInfo[key] = res.data[key];
                }
              }
            }
            // 将编辑的数据id加入dataInfo中以便保存
            this.dataInfo.id = res.data.id;
          });
      },

通过FormData的方式提交表单

handleSave() {
        const formData = new FormData();
        /* eslint-disable */
        for (let key in this.dataInfo) {
          if (Object.prototype.hasOwnProperty.call(this.dataInfo, key)) {
            formData.append(key, this.dataInfo[key]);
          }
        }
        axios.post(API.ifish_source_save, formData, {headers: {'content-type': 'multipart/form-data'}})
          .then((res) => {
            console.log(res);
          });
        this.$router.push('/source/list');
      },

文件上传通过覆盖element ui上传组件的默认上传行为来实现,当用户选择要上传的文件后将文件的file对象添加到dataInfo属性上(将要post上传的属性)

upload(data) {
   this.dataInfo.sourcePdf = data.file;
 },

通过element ui上传组件提供的http-request属性来覆盖上传的默认行为

<el-upload
    action=""
    :http-request="upload">
    <el-button size="small" type="primary">点击上传</el-button>
 </el-upload>

总结

  • 不足
  • 上传文件成功但是前台页面下载不了
  • 页面存在诸多细节问题待优化
  • 进展
  • 完成ifish后台的大部分,接下来就是添加余下页面的新增和修改功能还有解决bug和优化细节
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,240评论 25 709
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,347评论 19 139
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 14,196评论 4 61
  • 小学一天回家一次,初学要一周回家一次,高中一月才回家一次,大学却半年回家一次,一路走来,家离我们越来越远,但无论我...
    风飞洋阅读 838评论 0 0
  • 渐行渐远的岁月与美好随时光老人的步伐离我们远去,他带走的不仅仅是青春,还有眼眸的闪亮与晶莹、旺盛的精力、总也...
    唯美儿阅读 1,774评论 0 2