2017.11.7 ant design - upload 组件的使用, react 条件渲染以及 axios.all() 的使用

一、主要任务:悉尼小程序管理后台,添加景点页面的开发

二、所遇问题及解决

1. 上传多个不同分类音频信息时,如中文音频和英文音频,要求音频不是放在一个数组中的,每个音频是一个独立的字段,此时:

<Upload

action="/hserve/v2/file/upload/" // 必选参数,上传的地址;

listType="picture" // 上传列表的内建样式,这个不是很明白 text、picture、picture-card 之间的区别,默认值为 text;

showUploadList={false} // 是否展示 updateList,默认值为 true;

accept="audio/*" // 接受上传的文件类型,audio/*、video/*、image/*

fileList={cnAudioFileList} // 已经上传的文件列表,这里的 cnAudioFileList 初始值是为空的,上传后通过 handleAudioChange 来设置 cnAudioFileList 的值;

onChange={this.handleAudioChange.bind(this, ‘cn‘)} // 这里因为要分别上传中英文的音频,所以额外传了一个用以区分的参数;

>

handleAudioChange = (type, { file, fileList }) => { // file:当前操作的文件对象, fileList:当前的文件列表;(自定义传的参数需要放在默认参数的前面)

  if (file.status === ‘done‘) {

    fileList[fileList.length - 1].url = file.response.path

    let lastFile = fileList[fileList.length - 1]

    if (type === ‘cn‘) {

      this.setState({

        cnAudioFileList: fileList,

        site: { ...this.state.site, cnAudio: lastFile.url }

      })

    } else {

      this.setState({

        enAudioFileList: fileList,

        site: { ...this.state.site, enAudio: lastFile.url }

      })

    }

    return

  }

  if (type === ‘cn‘) {

    this.setState({ cnAudioFileList: fileList })

  } else {

    this.setState({ enAudioFileList: fileList })

  }

}

2. react 条件渲染,两种写法:

  (1)let example = <Example {...props} />,再在 render 中引用 { example };

  (2)直接在 render 中: { condition === value ? (<div>1</div>) : (<div>2</div>)  };

3. 对于多个接口相同,参数不同的请求,使用 axios.all(),具体用法:

  

  import axios from ‘axios‘

  let promises = [];

  promises.push(request1[params])

  promises.push(request2[params])

  axios.all(promises).then(res => {

    console.log(res) // res 作为一个数组,每项对应每个请求  

  }).catch(() => { message.error(‘请求失败‘) })

  如果确定有几个请求的话,可以分开返回参数,即 axios.all(promises).then(axios.spread(function(a, b) => {}))

时间: 2024-08-25 03:51:50

2017.11.7 ant design - upload 组件的使用, react 条件渲染以及 axios.all() 的使用的相关文章

2017.11.6 - ant design table等组件的使用,以及 chrome 中 network 的使用

一.今日主要任务 悉尼小程序后台管理开发: 景点管理页面: 获取已有数据列表,选取部分数据呈现在表格中,根据景点名称.分类过滤出对应的景点. 二.难点 1. 项目技术选取: ant design.react.es6: 2. 在此之前,只看过一点点 es6 的语法,未实操:react 也只是看过语法,未实操:ant design 是个什么鬼,第一次听说. 3. 所遇的主要问题: (1)ant design 中 table 组件的使用: 引入 Table.Buttton.Col.Row.Select

react 与 Ant Design 相互兼容问题,react 引入Ant Design 报错问题

antd 在 3.0 之后兼容 [email protected] 2.x 的版本请使用 [email protected] 原文地址:https://www.cnblogs.com/xsdds/p/11696966.html

2017.11.30 React基础语法之一组件

1.推荐一个React学习中文网站:http://www.css88.com/react/ 2.使用jsx来将代码封装成React组件,然后像插入普通 HTML 标签一样,在其他地方插入这个组件.使用React.createClass用于生成一个组件 var MyComponent=React.createClass({ render: function() { return <h1>Hello world!</h1>; } }); ReactDOM.render( <MyC

利用styled-component修改Ant Design 样式

如果你搜索了这个问题,肯定也遇到了和我一样的困惑,又想用Ant Design的组件,有些样式自己又想使用styled-component修改,标签名冲突怎么办? 直接上代码把.... import React from 'react'; import { Input, Button, List } from 'antd'; import { btnStyle, inputStyle, listStyle } from './style' const TodoListUI = (props) =>

十九、React UI框架Antd(Ant Design)的使用——及react Antd的使用 button组件 Icon组件 Layout组件 DatePicker日期组件

一.Antd(Ant Design)的使用:引入全部Css样式 1.1 antd官网: https://ant.design/docs/react/introduce-cn 1.2 React中使用Antd 1.在项目根目录安装antd[每个项目都安装一次]: npm install antd --save / yarn add antd / cnpm install antd --save 2.在您的react项目的css文件中引入Antd的css[会引入所有css样式]: @import '

使用Facebook的create-react-app脚手架快速构建React开发环境(ant.design,redux......)

 create-react-app是来自于Facebook出品的零配置命令行工具,能够帮你自动创建基于Webpack+ES6的最简易的React项目模板 1:首先在webstorm中新建一个项目 2:倘若不是最新版本的npm   ,   安装最新版本npm     npm install npm @latest 3: 安装项目中常用的相关的配置 yarn add react-redux redux redux-thunk react-router-dom thunk [email protect

【react自制全家桶】一、Webstrom+React+Ant Design+echarts搭建react项目

前言 一.React是Facebook推出的一个前端框架,之前被用于著名的社交媒体Instagram中,后来由于取得了不错的反响,于是Facebook决定将其开源.出身名门的React也不负众望,成功成为当前最火热的三大前端框架之一.相比于Angular,React更加轻量.而相对于另一个轻量级前端框架Vue来说,React虽然学习和使用起来难度稍微大一些,但是React的社区相对来说人气更旺,而且在移动端的开发上面,大名鼎鼎的React Native更是尽显优势,在代码性能上要好过Vue框架.

自写一个漂亮的ant design form提交标签

在ant design 的form组件中 能用于提交的组件比较少,所以我在这写了一个可以单选.多选标签提交的组件,调用非常简单. 代码: 1 import React,{Fragment} from 'react'; 2 import { Tag,Icon,Input } from 'antd'; 3 export interface TagDataType{ 4 data:string, 5 color:string, 6 key:string 7 } 8 export interface P

Ant Design of React的安装和使用方法

在中台产品的研发过程中,会出现不同的设计规范和实现方式,但其中往往存在很多类似的页面和组件,给设计师和工程师带来很多困扰和重复建设,大大降低了产品的研发效率.我们(蚂蚁金服体验技术部)经过大量的项目实践和总结,沉淀出一个中台设计语言 Ant Design.旨在统一中台项目的前端 UI 设计,屏蔽不必要的设计差异和实现成本,解放设计和前端的研发资源. Ant Design 是一个致力于提升『用户』和『设计者』使用体验的中台设计语言.它模糊了产品经理.交互设计师.视觉设计师.前端工程师.开发工程师等