能今天做好的事就不要等到明天。以梦为马,学习趁年华。

问题区

amis是什么?

amis是百度推出的前端低代码框架。力求简单不复杂的需求下,更少的代码,更快的效率!

amis能干什么?

amis能通过配置快速生成页面以及一些常用的功能,比如弹框、日期、富文本编辑器、tab切换等!

它可以直接引入在html中使用,但这种方式并不推荐,可以作为练习使用。除此之外它可用于基于react的项目中,通过简单的react项目中配置环境就可以用起来游刃有余。

amis适合什么人?

只要接触前端的人都适合,学习它要有个谦卑的姿态,不要因为你是个前端开发者你就觉得你不需要学习这玩意,毕竟百度内部都在大量使用,你又为什么不呢?而且这种低代码框架以后也会成为趋势。

amis有什么不足?

amis虽然有以上诸多优势,但是它同样存在不足。遇到功能较为复杂的需求,它可能需要花费你更多的心力,因为它不够灵活,更甚者,它可能显得苍白无力,难以实现这样的功能。当然,虽然它不够灵活,但你的脑子可以足够灵活,这样你就可以不局限于处处功能用amis,你可以掺杂着其它的技术方案。我可以明确告诉你amis有一些对外技术的窗口,具体你可以文档中慢慢探索。

一、学习路线

对于初学者,百度的这个amis框架上手还是小有难度的。为什么这样说呢?因为它在网上几乎没有任何关于它的学习资料,无论你上b站还是百度搜索都可以说没有任何关于它的信息。但不用担心,好在它有比较完善的文档和示例以及在线编辑器。

综上所述,我建议的学习路线是这样的。首先就是读文档https://baidu.gitee.io/amis/zh-CN/docs/index,接着就是看示例以及示例的代码结构https://baidu.gitee.io/amis/examples/index,然后可以尝试用编辑器上手一下https://aisuda.github.io/amis-editor-demo/#/edit/0,最后就是正式上手到项目(react或者vue)中。

二、学习资源区

1. 书籍

amis文档https://baidu.gitee.io/amis/zh-CN/docs/index

amis示例https://baidu.gitee.io/amis/examples/index

2. 视频

3. 相关文档

amis文档https://baidu.gitee.io/amis/zh-CN/docs/index

4. 相关论坛

这可能是amis为数不多与之相关的论坛,有用没用自己探索一下https://www.oschina.net/search?scope=news&q=%E4%BD%8E%E4%BB%A3%E7%A0%81

三、技术笔记

1.amis项目(react)目录初始化

2.amis项目(react)环境初始化

示例,一个简单的react的jsx页面,如下代码复制到你的其中一个react项目jsx页面中就行,配好路由npm start运行就可看到效果

import 'amis/lib/themes/default.css';import 'font-awesome/css/font-awesome.css';import { Component } from 'react'import axios from 'axios';import { render as renderAmis } from 'amis';import '../css/viewMore.css'// amis 环境配置const env = {// 下面三个接口必须实现fetcher: ({url, // 接口地址method, // 请求方法 get、post、put、deletedata, // 请求数据responseType,config, // 其他配置headers // 请求头}) => {config = config || {};config.withCredentials = true;responseType && (config.responseType = responseType);if (config.cancelExecutor) {config.cancelToken = new axios.CancelToken(config.cancelExecutor);}config.headers = headers || {};if (method !== 'post' && method !== 'put' && method !== 'patch') {if (data) {config.params = data;}return axios[method](url, config);} else if (data && data instanceof FormData) {config.headers = config.headers || {};config.headers['Content-Type'] = 'multipart/form-data';} else if (data &&typeof data !== 'string' &&!(data instanceof Blob) &&!(data instanceof ArrayBuffer)) {data = JSON.stringify(data);config.headers = config.headers || {};config.headers['Content-Type'] = 'application/json';}return axios[method](url, data, config);},isCancel: (value) => axios.isCancel(value)};const config={"type": "page",// "interval":"1000","className":"MainPage","body": [{"type": "container","className":"headContainer","body": [{"type": "tpl","className":"portalLogo","tpl": "","inline": false},{"type": "tpl","tpl": "","className":"groupLibrary","inline": false},{"type": "input-text","name": "keywordsM","className":"searchBoxA","placeholder": "请输入关键字","addOn": {"label": "","className":"sousuo","type": "submit",}},{"type": "tpl","tpl": "我的族库","className":"mineKu","inline": false},]},{"type":"page","className":"navigationContainer","initApi":"/api/category/tree","body":[{"type": "tabs","className": "firstType","mountOnEnter": true,"source":"${rows}","tabs": [{"title": "${Name}","body": [{"type": "tabs","className": "secondType","actionType":"","source":"${Children}","tabs": [{"title": "${Name}","actionType":"","body": [{"type": "tabs","className":"mainPoint",// "tabs.reload":"true","source":"${Children}","tabs": [{"title": "${Name}","body": []}]}]},],"tabsMode": "chrome"}]},],"tabsMode": "tiled"}]},{"type": "container","className": "UserHome-imgsm","body": {"type": "crud","api": "/api/family/category?perPage=12&page=${page}&type=${text}&status=2","syncLocation": false,"mode": "cards","className": "UserHome-crud msk","placeholder": "没有信息","columnsCount": 4,"defaultParams": {"perPage": "12",},"card": {// "visibleOn": "this.ExamineStatus==='已发布'","header": {"className": "bg-white head","avatar": "<%= data.ThumbUrl || \"https://img0.baidu.com/it/u=2121694649,3857497397&fm=26&fmt=auto&gp=0.jpg\" %>","avatarClassName": "pull-left thumb-md avatar b-3x m-r img"},"bodyClassName": "padder","body": [{"name": "Name","className": "UserHome-textnamem","label": "",},],},},},{"type":"container","className":"viewMoreFooter","body":[]}]}export default class ViewMore extends Component {state={isLoad:''}componentDidMount(){let toMyLibrary = document.getElementsByClassName('mineKu')[0]toMyLibrary.onmouseover=()=>{toHomePage.style.cursor='pointer'}toMyLibrary.onclick=()=>{window.location.href="#/personalFamilyLibrary"}let toHomePage = document.getElementsByClassName('portalLogo')[0]toHomePage.onmouseover=()=>{toHomePage.style.cursor='pointer'}toHomePage.onclick=()=>{window.location.href="#/UserHome"}let addressM = window.location.hrefconsole.log(addressM);if(addressM.indexOf("?")!==-1){let total=addressM.split('?')let totalRight=total[1].split('=')let suc = totalRight[1]suc=decodeURIComponent(suc)console.log(suc);this.setState({isLoad:suc})}let nav= document.getElementsByClassName('navigationContainer')[0]console.log(nav);let that = thisnav.addEventListener('click',function(e){const cName = e.target.parentNode.parentNode.parentNode.className;console.log(cName.indexOf('mainPoint'))if (cName.indexOf('mainPoint')!==-1){that.setState({isLoad:e.target.innerText})}})let searchBoxAbut = document.getElementsByClassName('sousuo')[0]searchBoxAbut.onclick=()=>{let searchBoxValue =document.getElementsByClassName("a-TextControl-input")[0].firstChild.valuethat.setState({isLoad: searchBoxValue})}}render() {let bb=this.state.isLoadreturn renderAmis(// 这里是 amis 的 Json 配置。config,{data:{text:bb,}},env);}}

百度amis学习笔记汇总相关推荐

  1. 神经网络与深度学习笔记汇总五

    神经网络与深度学习笔记汇总五 往期回顾 将之前掘金写的学习笔记所遇困难搬到这里,方便查看复习 遇到问题: 报错 (未解决) 学习内容: 1.报错operand should contain 1 col ...

  2. 软考信息安全工程师学习笔记汇总

    软考信息安全工程师学习笔记汇总 https://www.moondream.cn/?p=178 2020年软考信息安全工程师备考学习资料包 1.<信息安全工程师教程>重点标记版 2.& ...

  3. 【Spring MVC】学习笔记汇总

    Spring MVC 学习笔记汇总 Java 系列笔记:[Java系列笔记]语法基础 + Spring + Spring MVC + 数据结构 数据结构与算法笔记(这个牛逼!):<恋上数据结构& ...

  4. 2023年软考信息安全工程师备考学习笔记汇总

    信息安全工程师分属"信息系统"专业,位处中级资格,2016年下半年,第一次开考信息安全工程师(中级)考试.目前每年考试一次.已开考六次,2016年11月12日,2017年5月20日 ...

  5. 神经网络与深度学习笔记汇总一

    神经网络与深度学习笔记汇总一 梯度下降法: 向量化:代替for循环 广播 ReLU激活函数 逻辑回归 损失函数(误差函数) 代价函数 卷积神经网络 往期回顾 梯度下降法: 通过最小化代价函数(成本函数 ...

  6. 神经网络与深度学习笔记汇总二

    神经网络与深度学习笔记汇总二 正交化(方便调整参数) 迭代 单实数评估指标(判断几种手段/方法哪个更好) 指标选取 训练集.开发集.测试集作用与用途 评估指标 判断算法是好是坏 迁移学习 总结 往期回 ...

  7. 神经网络与深度学习笔记汇总三

    神经网络与深度学习笔记汇总三 往期回顾 将之前掘金写的学习笔记所遇困难搬到这里,方便查看复习 遇到问题: 异常值处理 学习内容 1..drop() 返回的是一个新对象,原对象不会被改变. 2.遇到问题 ...

  8. JVM学习笔记汇总:结合尚硅谷宋红康老师视频教程及PPT

    JVM学习笔记汇总:结合尚硅谷宋红康老师视频教程及PPT 第一章:JVM虚拟机的介绍 1.1虚拟机的分类 虚拟机通常分为两类:系统虚拟机和程序虚机.其中,系统虚拟机是指完全对物理计算机的仿真,而程序虚 ...

  9. 华为HCIA-datacom 学习笔记汇总目录

    华为HCIA-datacom 学习笔记汇总目录 华为HCIA-datacom 学习笔记1--网络参考模型 华为HCIA-datacom 学习笔记2--华为VRP系统 华为HCIA-datacom 学习 ...

最新文章

  1. (翻译)Real-UID,Effective-UID,Saved-UID区别
  2. python英文单词-python常用150个英文单词
  3. socket同步和异步通信区别_程序员必知必会,同步通信与异步通信,你了解多少...
  4. c++ 11 移动语义
  5. 笔记 - AliCloud 云上安全防护 简介
  6. 浩鲸科技基于ChaosBlade的混沌工程实践
  7. RPM 包相关命令详解
  8. windows 安装 pip工具
  9. 数据库路由中间件MyCat - 源代码篇(17)
  10. linux测试at命令,linux at命令:(定时执行脚本)
  11. status函数(自学数据结构第一天)
  12. 我的家乡河北涿州岐沟村(岐沟关)
  13. (SDL2)SDL在ubuntu下的测试代码(雷霄骅)
  14. word顶部有一道线_为什么word文档上面有一条横线
  15. jt808终端鉴权_JT808-1: JT808协议、GB808协议、道路运输车辆卫星定位系统-北斗兼容车载终端通讯协议...
  16. 在两台电脑之间通过网线、局域网快速传东西的几种方法
  17. 隐马尔可夫模型HMM
  18. “秒杀系统“设计原理
  19. naoqi机器人不说话
  20. WIN7修改“桌面”存储位置

热门文章

  1. 背上背包,出门旅行吧——可以随时取用的旅行攻略哟!
  2. 【FME】不规则图形生成四至点坐标
  3. 前端web搭建及常用web页面书写技巧
  4. 用Python一秒自动美化表格|python的1024种玩法(3)
  5. iOS- 无处不在,详解iOS集成第三方登录(SSO授权登录无需密码)
  6. 5G NR Bands定义及频率-频点 Frequency-ARFCN计算 (在线工具)
  7. 关于Mysql数据导出时遇到的Can't create/write to file问题
  8. 信息论复习笔记(1):信息熵、条件熵,联合熵,互信息、交叉熵,相对熵
  9. ajax open方法和表单
  10. 【docker】——docker项目中使用phantomjs实现网页快照缩略图