AntDesign Form使用布局相比传统Jquery有点繁琐

(一)先读写一个简单的input为例

  1. <a-form :form="form" layout="vertical" hideRequiredMark>
  2. <a-row>
  3. <a-col :span="8">
  4. <a-form-item label="用户名">
  5. <a-input
  6. v-decorator="['username', {rules: [{ required: true, message: '用户名' }]}]"
  7. placeholder
  8. />
  9. </a-form-item>
  10. ....

1、读数据,很简单

this.form.validateFields((err, values) => {
if (!err) {

this.form.getFieldValue("username");

注:此处也可以直接拿values中值使用
2、写数据,根据经验把get变成set,提示不存在setFieldValue(!-_-)
换一个
this.form.setFieldsValue('username', '测试')

执行一直不成功,提示
browser.js?1af0:49 Warning: You cannot set a form field before rendering a field associated with the value.

网上查各种资料未找到原因,通过以下方法尝试解决
(1)this.form.getFieldDecorator('username', { initialValue: '' })无效果
(2)setTimeout无效果
(3)最终发现需要这样写

this.form.setFieldsValue({
'username': '测试'
})
注意正确应该多一对{},很奇怪为啥没有setFieldValue
函数原型:setFieldsValue Set the value of a field. Function({ [fieldName]: value }
 
(二)上传图片
1、data()中定义FileList,初始化图片如下面格式(可以不初始化)
  1. fileList: [{
  2. uid: '-1',
  3. name: 'xxx.png',
  4. status: 'done',
  5. url: 'https://zos.alipayobjects.com/rmsportal/jkjgkEfvpUPVyRjUImniVslZfWPnJuuZ.png'
  6. }]

2、下面是点击图片后自动上传写法,可以将action替换为你自己的上传图片后台地址

  1. <a-row>
  2. <a-col :span="12">
  3. <a-form-item label="图片">
  4. <a-upload
  5. action="https://www.mocky.io/v2/5cc8019d300000980a055e76"
  6. listType="picture-card"
  7. :fileList="fileList"
  8. @preview="handlePreview"
  9. @change="handleChange"
  10. >
  11. <div v-if="fileList.length < 1">
  12. <a-icon type="plus"/>
  13. <div class="ant-upload-text">上传图片</div>
  14. </div>
  15. </a-upload>
  16. </a-form-item>
  17. </a-col>
  18. </a-row>
  1. handleCancel () {
  2. this.previewVisible = false
  3. },
  4. handlePreview (file) {
  5. this.previewImage = file.url || file.thumbUrl
  6. this.previewVisible = true
  7. },
  8. handleChange ({ fileList }) {
  9. this.fileList = fileList
  10. }
  1. .ant-upload-select-picture-card i {
  2. font-size: 32px;
  3. color: #999;
  4. }
  5. .ant-upload-select-picture-card .ant-upload-text {
  6. margin-top: 8px;
  7. color: #666;
  8. }

3、当选择图片时已经自动调用action接口,后台返回数据如下

  1. {
  2. "name": "xxx.png",
  3. "status": "done",
  4. "url": "https://zos.alipayobjects.com/rmsportal/jkjgkEfvpUPVyRjUImniVslZfWPnJuuZ.png",
  5. "thumbUrl": "https://zos.alipayobjects.com/rmsportal/jkjgkEfvpUPVyRjUImniVslZfWPnJuuZ.png"
  6. }

4、到此时已经将图片上传到了服务上了,实际项目中需要同时上传token,就需要使用其他写法,请看笔记九。

AntDesign vue学习笔记(九)自定义文件上传

AntDesign vue学习笔记(七)Form 读写与图片上传的更多相关文章

  1. AntDesign vue学习笔记(九)自定义文件上传

    第七节时提到,上传文件时实际可能需要传输一个token. 1.查看vue antdesign文档https://vue.ant.design/components/upload-cn/ 2.使用cus ...

  2. form验证及图片上传

    form验证及图片上传 这一节增加推荐图书的提交和删除功能,来学习node的form提交以及node的图片上传功能.开始之前需要源码同学可以先在git上fork:https://github.com/ ...

  3. Nodejs之MEAN栈开发(四)---- form验证及图片上传

    这一节增加推荐图书的提交和删除功能,来学习node的form提交以及node的图片上传功能.开始之前需要源码同学可以先在git上fork:https://github.com/stoneniqiu/R ...

  4. Android开发中使用七牛云存储进行图片上传下载

    Android开发中的图片存储本来就是比较耗时耗地的事情,而使用第三方的七牛云,便可以很好的解决这些后顾之忧,最近我也是在学习七牛的SDK,将使用过程在这记录下来,方便以后使用. 先说一下七牛云的存储 ...

  5. form input file 图片上传360IE兼容问题

    <form action="" class="form-box" class="form_box" enctype="mul ...

  6. Vue页面内公共的多类型附件图片上传区域并适用折叠面板

    在前端项目中,附件上传是很常用的功能,几乎所有的app相关项目中都会使用到,一般在选择使用某个前端UI框架时,可以查找其内封装好的图片上传组件,但某些情况下可能并不适用于自身的项目需求,本文中实现的附 ...

  7. Web 在线文件管理器学习笔记与总结(19)上传文件

    dir.func.php 中添加方法: /* 上传文件 */ function uploadFile($fileInfo,$path,$allowExt = array('jpg','jpeg','p ...

  8. JSP学习笔记(四):文件上传

    JSP 可以与 HTML form 标签一起使用,来允许用户上传文件到服务器.上传的文件可以是文本文件或图像文件或任何文档.我们使用 Servlet 来处理文件上传,使用到的文件有: upload.j ...

  9. Android学习笔记_13_网络通信之多个上传文件

    一.获取HTTP协议: 建立一个Web项目,建立一个如下所示的jsp界面,用IE捕获表单提交信息. <%@ page language="java" contentType= ...

随机推荐

  1. ELK——Elasticsearch 搭建集群经验

    本文内容 背景 ES集群中第一个master节点 ES slave节点 迁移到:http://www.bdata-cap.com/newsinfo/1712679.html 本文总结 Elastics ...

  2. 原生ajax中readyState中的含义以及HTTP协议状态码的含义

    xmlhttp.readyState的值及解释: 0:请求未初始化(还没有调用 open()). 1:请求已经建立,但是还没有发送(还没有调用 send()). 2:请求已发送,正在处理中(通常现在可 ...

  3. Git恢复删除的分支

    1.使用 git reflog 命令查看显示整个本地仓储的commit,包括所有branch的commit,甚至包括已经撤销的commit. 2.找到我们想要恢复的分支 ,可以看到我们当时commit ...

  4. SSH Weak Encryption Algorithms Supported

    SSH使用了弱加密算法,解决方法: 在/etc/ssh/sshd_config中显式指定ssh通讯时使用的加密算法 在文件的最后加上: Ciphers aes128-ctr,aes192-ctr,ae ...

  5. Docker搭建Nexus(Maven私库)

    0.镜像的查找:docker search nexus 1.拉取官方镜像:docker pull sonatype/nexus3 2.创建了自己的目录 (/opt/nexus/nexus-data) ...

  6. ansible自动化运维02

    ansible清单管理 inventory文件通常用于定义要管理主机的认证信息,例如:ssh登录用户名,密码,以及key相关信息. 举个例子:定义清单组 注意:组名为pro,关键字段children表 ...

  7. Nginx 反向代理功能-实现http反向代理

    Nginx 反向代理功能-实现http反向代理 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.

  8. C#中的函数(三)参数传递及返回值

    接前面二篇,继续开始新的研究 前面忘了说什么是主调函数与被调函数 主调函数:执行调用其它函数语句所在的函数 被调函数:被其它函数所调用的函数 简单说就是一个是发起调用者,另一个是被调用者 写个小例子说 ...

  9. DataOps Reading Notes

    质量.效率.成本.安全,是运维工作核心四要素. AIOps 技术会涉及到数据收集方面的基础监控,服务监控和业务监控,甚至会涉及到与持续交付流水线的数据和状态整合(比如在软件发布的阶段会自动关闭某些监控 ...

  10. 【java异常】Building workspace has encountered a problem. Error

    可能是workspace设置错误,检查一下 或者把项目重新下一下,或者重新maven导入