Skip to content

Releases: baidu/amis

1.0.10

20 Mar 04:42
18db311

Choose a tag to compare

Feature

  • api新增replaceData配置项 - 返回的数据是否替换掉当前的数据,默认为false,即追加;设置成true就是完全替换。
  • Tree中的可以自定义新建修改以及删除的鼠标悬移提示
  • Combo新增strictModesyncFields配置项
    • strictMode - 默认为严格模式,设置为false时,当其他表单项更新时,里面的表单项也可以及时获取,否则不会。
    • syncFields - 配置同步字段。只有strictModefalse时有效。如果Combo层级比较深,底层的获取外层的数据可能不同步。但是给Combo配置这个属性就能同步下来。输入格式:["os"]
  • RichText不再限制只允许bcebos.com的视频
  • DatePicker支持utc
  • Image在裁剪时提交表单,自动提交裁剪后的内容
  • Wizard新增reset功能
  • confirm支持自定义确认文字
  • Chart新增自定义dataFilter
  • Card支持avatarText
  • Image添加是否重新剪裁的开关 - reCropable
  • echarts 补充bmap插件
  • 新增四种条件过滤器 - isTrue, isFalse, isMatch, isEquals

Bugfix

  • 修复Image再次编辑时出错的问题
  • 修复数据映射时间转换问题
  • 完善了Select单选和多选自定义value字段valueField的逻辑。感谢:[@FatDong1 ]
  • 修复loadDataOnceFetchOnFilterfalse时无法触发reload的问题。感谢:[@FatDong1 ]
  • 修复Drawer配置actionTypecopy导致Drawer弹框出错的问题
  • 修复requiredOnGroup中的问题
  • 修复Picker读取选项接口不执行的问题
  • 缩放时的元素定位sceleY更改。感谢:[@Kate605690919 ]
  • 修复Picker无限拉取的问题
  • 修复CRUD初始化异常时,Action配置的Dialog无法弹出问题
  • DrawerPopover被覆盖问题

Notice

新版本 amis 里面,对 css 的依赖,改成了require('xxx.css'),所以,请在 fis3 配置中添加:

fis.match('amis/**.js', {
  preprocessor: fis.plugin('js-require-css')
});

webpack如果配置了css loader,则默认支持。

1.0.9

21 Jan 09:43

Choose a tag to compare

  • iFrame 与别的渲染通信逻辑补齐
  • Table 行高亮功能添加。
  • 升级日历控件&日历范围控件,参考新的规范:http://console.yunshe.design/docs/time
  • Table 列的 label 支持 TPL 渲染。感谢:[ @yeyuqiudeng ]
  • 优化图片上传控件&文件上传控件,新增重试功能。
  • Crud 的固顶功能,将 header 部分也固定。
  • 新增弹框的全屏模式
  • 新增图集放大功能
  • 修复 combo 父子可拖拽的问题。
  • 颜色控件,可以限制用户输入,只能选择预设颜色。
  • Select 支持选项级别的 disabled 配置。
  • popOver 位置计算优化在缩放情况下的定位问题。

break changes

monaco-editor 的使用方式换成了 esm 版本,意味着现在 webpack 也可以工作了。需要调整相应的配置。

如果,你不需要使用 editor,则可以忽略这些。

fis3 版本

  1. 不需要关闭monaco-editor 的 hash 功能了
  2. css 可以跟其他css 打包在一起了。
  3. 启用一个新插件,添加如下配置即可。
fis.match("::package", {
  prepackager: fis.plugin("stand-alone-pack", {
    "/pkg/editor.worker.js": "monaco-editor/esm/vs/editor/editor.worker.js",
    "/pkg/json.worker.js": "monaco-editor/esm/vs/language/json/json.worker",
    "/pkg/css.worker.js": "monaco-editor/esm/vs/language/css/css.worker",
    "/pkg/html.worker.js": "monaco-editor/esm/vs/language/html/html.worker",
    "/pkg/ts.worker.js": "monaco-editor/esm/vs/language/typescript/ts.worker",

    // 替换这些文件里面的路径引用。
    // 如果不配置,源码中对于打包文件的引用是不正确的。
    replaceFiles: ["amis/lib/components/Editor.js"]
  }),
});

参考:https://github.com/fex-team/amis-admin/blob/master/fis-conf.js

webpack 版本

  1. js 里面补充一个 worker 相关的配置如:
self.MonacoEnvironment = {
  getWorkerUrl: function (moduleId, label) {
    if (label === 'json') {
      return './json.worker.bundle.js';
    }
    if (label === 'css') {
      return './css.worker.bundle.js';
    }
    if (label === 'html') {
      return './html.worker.bundle.js';
    }
    if (label === 'typescript' || label === 'javascript') {
      return './ts.worker.bundle.js';
    }
    return './editor.worker.bundle.js';
  }
}
  1. entry 里面补充这几个 worker即可
module.exports = {
  entry: {
    "app": './index.js',
    // Package each language's worker and give these filenames in `getWorkerUrl`
    "editor.worker": 'monaco-editor/esm/vs/editor/editor.worker.js',
    "json.worker": 'monaco-editor/esm/vs/language/json/json.worker',
    "css.worker": 'monaco-editor/esm/vs/language/css/css.worker',
    "html.worker": 'monaco-editor/esm/vs/language/html/html.worker',
    "ts.worker": 'monaco-editor/esm/vs/language/typescript/ts.worker',
  },
  output: {
    globalObject: 'self',
    filename: '[name].bundle.js',
    path: path.resolve(__dirname, 'dist')
  },
  module: {
    rules: [{
      test: /\.css$/,
      use: ['style-loader', 'css-loader']
    }, {
      test: /\.ttf$/,
      use: ['file-loader']
    }]
  }
};

参考:
https://github.com/microsoft/monaco-editor/blob/master/docs/integrate-esm.md
https://github.com/fex-team/amis-admin/blob/webpack/webpack.config.js

1.0.8

09 Dec 09:38

Choose a tag to compare

  • resize-sensor 修复在隐藏容器中初始化无效果的问题。
  • wizard 添加 affixFooter 功能。
  • Select autoComplete 中文输入优化,中文输入完成才开始请求
  • 添加 contextMenu 组件
  • 修复弹框中按钮为 ajax 类型处理完成可能不关闭弹窗的问题。
  • 解决 picker 的 embed 用法可能卡死的问题。
  • form control 数据修改添加节流,优化性能。
  • IE10 + 选择器报错问题修复
  • Date-Range 移动端样式适配
  • Image receiver 中参数获取问题修复
  • Select autoComplete 去掉有 bug 的 cache 功能,api 的配置中已经支持 cache 功能,所以直接去掉。
  • multipart form-data 格式不做 url-encode 值了

1.0.5

12 Nov 07:10
2d3fb03

Choose a tag to compare

  • 修复 toast 弹窗关闭时有闪烁问题。
  • 添加颜色显式渲染器
  • 修复 select disabled 状态依然可以移除的问题。
  • 优化 select 弹框,支持智能选择上弹出还是下弹出。
  • 优化 Tree & Select 样式及集成增删改功能。
  • 修复 Form 从底层同步数据导致部分丢失的问题。

1.0.4

01 Nov 13:30
1d6aa76

Choose a tag to compare

  • Tree 添加:新增、编辑和删除能力1689e32
  • Panel 的 affixFooter 功能支持配置 "always" 当高度不够时可以设置这个固定在底部。
  • Date 支持更多的快捷日期添加。
  • CRUD 控件可以从数据作用域种提取数据。
  • iframe 支持 reload
  • 自定义代码在配置 children 的基础上新增了一种配置 component 的方式,后者支持 react-hooks。
  • CRUD 支持前端结果过滤。
  • Image 升级 UI
  • File 升级 UI
  • Picker 支持初始从接口拉取选项回显值。
  • api 的 dataType 新增 form 类型,对应: www-urlencode 格式。
  • 选项卡支持垂直摆放。

1.0.2

09 Sep 04:27

Choose a tag to compare

  • Form 新增 trimValues 配置,自动将字符串首尾空白去除。
  • TreeSelect 补充 minLength\maxLength 配置功能
  • 修复自定义组件不支持 React Hooks 的问题
  • 修复 form 清空缓存和页面跳转组合使用时没有清空成功的问题。
  • 修复 Table 列配置栏存在空白栏的问题
  • 修复 autoComplete 拿不到上层数据的问题
  • 带选项获取的表单项支持联动通信实现选项重新拉取
  • Tasks 渲染器,新增 checkApi 自动监控变化重新拉取功能。
  • Combo 支持 tabs 模式
  • DatePicker 支持 shortcuts 选项。
  • 解决 QuickEdit 初始值无效的问题
  • 修复列固定时,单元格高度没有对齐问题。
  • 修复字符串形式配置验证器问题 c4dda34
  • 修复 filterable 右对齐问题 f2a0f79
  • service 可以返回数组格式渲染器 7f9516f

1.0.1

19 Aug 04:42

Choose a tag to compare

  • 修复部分表单项的 clear 按钮在 disabled 状态下仍然可以点击的问题
  • select 、checkboxes 、list 等选项选择类控件支持 autoFill 将选项内其他字段的值填充到表单其他字段中。
  • 颜色选择器控件支持自定义预设颜色
  • npm 包中包含 sdk 代码,用法见下方说明。
  • 修复 picker、轮播图 值可能没有同步的问题
  • date 显示类日期控件,直接显示相对值,比如:2分钟前,且会自动更新。
  • api 支持配置发送适配器和接收适配器
  • 去掉对 react-bootstrap 的依赖,代码体积减少不少。
  • table footable 、 nested 样式优化,支持手风琴模式,以及支持多层级拖拽。

JSSDK 用法

使用 JSSDK 可以进一步简化使用成本,不会使用 React 也没关系,直接引入 JSSDK 代码就能基于页面配置将页面渲染到指定 dom 节点上。目前 JSSDK 代码也会伴随 npm 包一起发布,更多信息请查看:https://baidu.github.io/amis/docs/getting-started#jssdk

<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <title>AMIS Demo</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <meta name="viewport"
        content="width=device-width, initial-scale=1, maximum-scale=1">
    <meta http-equiv="X-UA-Compatible" content="IE=Edge">
    <link rel="stylesheet" 
        href="https://houtai.baidu.com/v2/csssdk">
    <style>
        html, body, .app-wrapper {
            position: relative;
            width: 100%;
            height: 100%;
            margin: 0;
            padding: 0;
        }
    </style>
</head>
<body>
    <div id="root" class="app-wrapper"></div>
    <script src="https://houtai.baidu.com/v2/jssdk"></script>
    <script type="text/javascript">
    (function() {
        var amis = amisRequire('amis/embed');
        amis.embed('#root', {
            type: 'page',
            title: 'AMIS Demo',
            body: 'hello world'
        });
    })();
    </script>
</body>
</html>

1.0.0-rc.9

29 Jul 12:25

Choose a tag to compare

  • 修复 crud 的 quickEditEnabledOn 配置无效的问题
  • 修复 grid 布局 safari 兼容性问题
  • 修复千分位显示只加小数点前面的
  • 修复 Cannot read property 'getModeId' of null 问题
  • 修复 editorTheme 无效问题
  • 修复 Drawer 内继续弹框时,点击外部关闭问题
  • 编辑器添加 EditorWillUnmout 钩子, JSON 默认加验证
  • File 支持同表单一起提交
  • PopOver 弹出时给容器 dom 节点添加 has-popover 类名
  • 优化 Drawer 错误提示
  • 优化 difference 函数,支持提供删除信息
  • 优化移动端样式
  • Picker 样式优化
  • Wizard 每一步的提交接口可以决定操作完后跳至哪一步
  • Switch 样式更新
  • Group 支持配置垂直居中
  • Form 的 canAccessSuperData 不能透传
  • Crud 支持 reload 属性,执行 reload 后同时刷新自身
  • detectField 可以配置成 & ,支持更多的属性判断
  • 添加 SDK 使用文档

1.0.0-rc.8

12 Jul 07:49

Choose a tag to compare

  • 修复 Table quickEdit 内联模式修改完失去焦点问题
  • 修复 Table 编辑时失去焦点的问题
  • 修复 icon-picker 图标面板的层级过低问题
  • 修复 Service 底下数据更新问题
  • 修复 Card listItem 字段显隐不工作的问题
  • 修复图片多图上传的bug
  • 修复Nav active 属实设置无效的问题
  • 修改 Carousel 默认的 itemSchema
  • 修复 form 底下 service 数据不同步到 form 的问题
  • 修复 control 引用过期的问题
  • 修复轮播图 options 可能不是数组的报错
  • 修复 dialog 中 form 配置 disabled 无效问题
  • 修复 formItem 配置 validateOnChange 为 false 时,错误不消失的问题
  • 修复 validateOnChange 在 combo 中无效的问题
  • 修复 Table quickEdit 内联模式修改完失去焦点问题
  • 优化 Picker embed 模式
  • List 表单项当 options 为空时显示 placeholder
  • form 支持配置验证错误提示
  • Audio src 属性支持变量
  • 优化 Audio 布局,block模式process自动铺满
  • Tooltip 解决重影问题
  • data-tooltip 新增其他位置定位
  • Select 支持 simpleValue
  • 统一 API 验证方式
  • Cards list 的全选拖拽按钮可以 crud 定制位置

1.0.0-rc.5

27 Jun 03:35

Choose a tag to compare

  • Checkboxes、Radios 支持 options 分组
  • Panel affixFooter 优化,解决初始没有固定在底部的问题。
  • 新增引用($ref)功能,基于此功能,可以实现递归表单项实现。示例
  • 优化渲染器报错页面,解决因为出错导致白屏的问题。
  • Form 下面的 table 支持外部通信,添加或者删除内容。
  • Form 下面的 table 表单验证完善,支持内部成员验证。
  • Crud 批量保存前打通表单验证。
  • Combo 支持分支功能,换句话说就是现支持添加成员时可以选择多种类型,然后进行添加。示例
  • Form 底下非表单项类型,可以加 static- 前缀直接使用了。