WIP components (as built)
This commit is contained in:
109 files changed
+6509
-3
No files matched your search
@@ -0,0 +1,47 @@
|
||||
# 467 LoginForm
|
||||
|
||||
登录表单。
|
||||
|
||||
## 用途
|
||||
|
||||
账号、密码与“记住我”;提交中禁用输入;显示调用方给出的错误(含频率限制、锁定)。密码在私有临时状态中编辑,经提交回调传出,完成后清除;账号校验由调用方完成。
|
||||
|
||||
## 最小示例
|
||||
|
||||
```go
|
||||
var state mujica.LoginFormState
|
||||
view := func(c *ui.Context) {
|
||||
mujica.Use(c, mujica.Settings{})
|
||||
mujica.LoginForm(c, &state, mujica.LoginFormOptions{OnSubmit: func(account, password string, remember bool) {
|
||||
// Submit credentials through the caller-provided auth service.
|
||||
state.EndSubmit("")
|
||||
}})
|
||||
}
|
||||
ui.Render(view, 400, 300, 1)
|
||||
```
|
||||
|
||||
## 参数
|
||||
|
||||
| 字段 | 类型 | 默认值 | 含义 |
|
||||
| --- | --- | --- | --- |
|
||||
| `s` | `*LoginFormState` | 必填 | Account、Remember 可读写;密码不可读取。 |
|
||||
| `OnSubmit` | `func(account, password string, remember bool)` | 必填 | 唯一接收凭据的出口。 |
|
||||
| `AccountLabel` | `string` | 内置“Email or username” | 账号标签。 |
|
||||
| `Disabled` | `bool` | false | 禁用。 |
|
||||
|
||||
## 状态
|
||||
|
||||
默认、必填错误、提交中、失败(错误文字)、禁用。
|
||||
|
||||
## 事件
|
||||
|
||||
`OnSubmit` 每次提交调用一次;完成后调用 `s.EndSubmit(err)`,密码随即清除。
|
||||
|
||||
## 键盘操作
|
||||
|
||||
Tab 顺序:账号、密码、显示密码、记住我、登录;任一字段中 Enter 提交;缺项时聚焦第一个空字段。
|
||||
|
||||
## 限制
|
||||
|
||||
- 凭据只经调用方回调传出;密码、验证码与密钥不会写入日志、Label 或 Description。
|
||||
- 提交失败后需重新输入密码。
|
||||
Reference in new issue
Block a user