MASA Stack 第三期社区例会
MASA Blazor 0.5.0 发版内容
功能
Autocomplete:支持通过设置 AutoSelectFirst 参数开启自动选择第一项的功能,支持 CacheItems 参数,增强使用上下键的用户体验。
BottomNavigation::一个替代侧边栏的新组件。它主要用于移动应用程序。
DragZone:一个基于 Sorttable.js 实现拖放功能的新组件。
Form : FluentValidation 支持依赖注入,验证消息支持 i18n。
i18n : 组件库支持本地化,增强了文档的本地化。
Markdown:支持通过设置 Readonly 开启只读。
Modal:支持通过插槽设置自定义标题内容和关闭内容。
Select/Autocomplete:添加按下 Escape、Space、Home、End 键的逻辑。
破坏性更新
i18n:将使用 i18n 的 api 更改为 services.AddMasaBlazor().AddI18nForServer().
CSS:合并 masa-blazor.css 和 masa-extend-blazor.css 到 masa-blazor.min.css.
问题修复
Breakpoint:修复 MasaBlazor.Breakpoint.Mobile 首次不工作的问题。DataTable:将 FooterProps 参数设置为强类型,如果 FilterProps.ItemsPerPageOptions 为空时不渲染页数选择元素。DataTable:FixedRight 和 FixedHeader 同时使用时出现 UI 错误。
Dialog:复滚动如果对话框已显示并将要释放时。
Divider :修复在某些场景分割线无法显示的问题,比如在 Stepper 中使用时。
ErrorHandler:修复生命周期中的异常仍然循环抛出的问题。
ListGroup:如果 append-icon 为空是不渲染该元素,prepend-icon 同理。
Markdown:修复 Readonly 拼写错误,将 token 移动到请求头。
NavigationDrawer:修复当触发点击事件时 MiniVariant 设置为 false 的逻辑错误问题。
Select:增强用户使用体验,修复 #391 和 #332。
Stepper:修复在处理时引用可能为空的问题。
Switch/Checkbox:修复 OnChange 事件无法触发的问题 #489。
TimelineItem:修复 Left 和 Value、AutoGrow、RowHeight 参数值改变后,重新计算输入高度。 参数不起作用的问题。
Textarea:在 Value、AutoGrow 或 RowHeight 参数更改后重新计算输入高度。
TextField:修复对话框中 AutoFocus 不起作用。
Transition:修复 LeaveAbolute 在 ToogleableTransftionElement 中不起作用。
Treeview:修复了 Items 更改时树节点没有更新的问题。重构 i18n:重命名 language 为 culture.文档
ExpansionPanels:使用新的过渡组件更新高级示例。
CSS:masa-extend-blazor.css 不应包含文档的样式。
WebAssembly:最小化应用程序下载大小,更新首屏加载动画。
<u>信息来源:https://github.com/BlazorComponent/MASA.Blazor/releases/tag/</u>
0.5.0MASA Framework 0.5.0 内容发版
修复
BugConfiguration.Dcc: 修复获取节点错误 #85
Storage.Aliyun: 修复基于配置文件的上传出错 #87
EntityFramework: 修复使用 MySql 错误 #108, 修复使用软删除过滤由于嵌套引用导致删除失败 #144
EventBus: 修改错误提示信息地址 #105
DomainEventBus: 修复聚合根添加领域事件执行顺序错误 #120 #135
AutoComplete: 修复搜索匹配不到的问题 #136 #139 #140 #149
Dispatcher: 修复部分事件(未继承 ITranscation 的事件)发布时,当 Handler 存在嵌套发布事件时,事务中间件会被多次执行的问题 #146, 修复 EventBus 多次发布事件,第二次发布事件不会自动持久化 #153
重命名
Masa.Contrib.BasicAbility.Dcc 重命名为 Masa.Contrib.Configuration.ConfigurationApi.Dcc#96
功能
IdGenerator: 添加 IdGenerator.SimpleGuid 和 IdGenerator.SequentialGuid 和 IdGenerator.Snowflake #76 #83 #87 #97 #115 #121 #124
Auth: 为团队和权限添加 sdk 方法 #77 #80,更新 auth sdk 身份 #84 #98 #117 #141 添加 Auth.Contracts#104 #113 新增修改用户数据 #157 #160 #162
OIDC:添加 Oidc.EntityFramework、Oidc.Cache.Storage#78 #93 #109
IdentityModel: 添加 IdentityModel, 支持更新创建者、创建时间、修改人、修改时间等 #81 #103 #118
Data: 支持分布式锁 #88 #131
Storage: 支持多 Bucket#89, 添加 AddAliyunStorage 支持异步 #123
Scheduler:添加调度器 Sdk #102 #107 #110 #142 #151
Dcc: 添加 DCC Sdk#96 #161
Configuration.ConfigurationApi.Dcc: 扩展方法 GetDefault,GetPublic #127 #138
Dispatcher: EventBus 支持自定义日志级别 #134 #137
Mc: 添加 Mc Sdk#112 #143 #163
EntityFramework: Support migration of local message table via IDesignTimeDbContextFactory#152
Tsc: 添加 tsc-sdk #125
重构
EntityFramework: 支持乐观并发 #79, 重构 MasaDbContextOptionsBuilde#122
IntegrationEvents.Dapr:重构 DaprIntegrationEventBus #116 #150 #158
Autocomplete: 重构和优化用户体验 #159
文档
Home: 修改首页文档 #87
Storage.Aliyun: 修复中文文档错误 #87
Dispatcher: 添加 Benchmark 数据 #91#92
DistributedLock: 添加文档 #95 更新 IntegrationEvent 文档使用 #132
Identity: 修改引用包文档错误 #164
测试
Auth: 完善 Auth 单元测试 #94
PM:修复单元测试 #145
杂务
1.修改命名空间 #82
2.更新 Masa.Utils 库版本 #90 #114 #133 #147 #154 #165
<u>信息来源:Release 0.5.0 · masastack/MASA.Framework (github.com)</u>
MASA Stack 产品谍照
1.登录页面!
2.个人信息页面
3.全局导航
4.消息中心
5.渠道管理
6.配置中心
7.项目管理
社区近期问题解答
MASA Framework
Q1:MASA Framework 在 vs 里安装项目的那几个模板是怎么安装上的?
A:dotnet new --install Masa.Template
Q2:目前 Framework 如何与前端 I18n 配合做多语言?
目前 0.5.0 版本的框架暂不支持多语言,我们计划在 0.6.0 增加多语言支持
Q3:DomainEvent、DomainCommand、DomainQuery 有什么区别?
领域事件是 DomainEvent,为了简化 CQRS,就内置了 DomainCommand、DomainQuery,它们是 DomainEvent 与 Command、Query 的组合
MASA Blazor
Q1: Blazor 如何实现登录,类似 MVC 后台程序的效果?
参考:https://github.com/masalabs/MASA.Framework.Admin
Q2:MASA Blazor App、MASABlzaor Pro Web、MASA Blazor Website、MASA Framework Project 区别是什么?
MASA Blazor App:使用了 MASA Blazor 的模板 MASABlzaor Pro Web: 使用了 MASA Blazor Pro 的样式 MASA Blazor Website:使用了文档站点的样式 MASA Framework Project:创建 Framework 项目
Q3:目前 Tooltip 组件写法太复杂,会影响代码的结构和阅读体验,能否可以优化一下,例如在 MButton 上原生支持 Tooltip 属性。
开发组件库应该保持单一组件最小的功能,或者说单一职责,Tooltip 现在的设计是可以包裹任何元素,无论该元素是行内元素还是块元素,从技术上来说 Tooltip 要知道目标元素,就需要给目标元素添加一个唯一的自定义属性,你可以通过查看 html 看到有个_activator_ 开头的属性。然后给该元素添加 click 和 mouseenter 事件来实现点击触发和 Hover 触发的效果。具体请移步https://github.com/BlazorComponent/MASA.Blazor/issues/595。
其他
Q1:Masa 以后支持工作流吗?是免费的吗?
2.0 会增加工作流支持,是免费的
开源地址
https://github.com/BlazorComponent/MASA.Blazorhttps://github.com/masastack/MASA.Framework
如果你对我们的开源项目感兴趣,无论是代码贡献、使用、提 Issue,欢迎联系我们
版权声明: 本文为 InfoQ 作者【MASA技术团队】的原创文章。
原文链接:【http://xie.infoq.cn/article/6541a755f2c4a1ad1ea0f44c9】。文章转载请联系作者。
评论