我将 flutter 的 SDK 版本更改为 min ,以便我可以修复我的代码以确保空值安全。
有一个我不明白的问题,这一行产生了以下错误:
The argument type 'Color?' can't be assigned to the parameter type 'Color'
border: Border.all(color: Colors.grey[300], width: 1),
Run Code Online (Sandbox Code Playgroud)
但是如果我改变Colors.grey[300]任何不使用的值[],它就会工作,所以Colors.grey工作得很好。
我应该在这里更改什么以继续使用grey[300]?
我有一个图表,使用chart.js,并且我看到有一个选项maxTicksLimit,但这还不够,因为我的数据范围X-Axis可以在 5 之间(所以在这种情况下,我需要 1 个步长的 5 个刻度),但可以尽可能高例如 320,在这种情况下,我需要 5 或 8 个刻度,步长为 20 或 25。
有没有办法定义最小刻度数?对我来说理想的是:
minimum amount of ticks = 4
maximum amount of ticks = 8
Run Code Online (Sandbox Code Playgroud)
因为如果我把maxTicksLimit: 5, 放在更高的数字上,它们将是 5,但如果我的 X 轴范围是 0-25,由于某种原因我只会有 4 个刻度(0-10、10-15、15-20、20- 25)
由于我的 X 轴范围根据输入动态变化,最好的解决方案是这样的:
当xAxes范围为:
0-5 -> 5 ticks with step 1
0-10 -> 5 ticks with step 2
0-15 -> 5 ticks with step 3
from 15 to 40, up to 8 …Run Code Online (Sandbox Code Playgroud) 我有一张桌子TblClient。
2个重要的列是:ClientID(PK,增量)和ClientNumber。
我们可以添加新客户端,并且ClientID会自动分配,但是ClientNumber可以选择。
我们想对进行“建议” ClientNumber,但用户可以决定输入自己的电话号码,而不接受我们的建议。
建议必须是第一个可用的ClientNumber大于2200(首先ClientNumber是2200)。
我们这样做是因为,如果用户输入一个手册号(例如5000),而最后插入的手册号是2500,则我们不会将下一个“建议”设为5001,而是2501。
用查询返回此数字的正确方法是什么?
谢谢!
我制作了一个 type="file" 的自定义输入字段,因为我不喜欢默认的输入字段。为了实现这一点,我做了:
<input
#uploadFile
type="file"
id="uploadFile"
class="hidden-input"
accept="image/jpeg, .jpeg, image/png, .png, image/pjpeg, .jpg, .docx, .pdf"
(change)="selectFile($event.target.files[0])"
/>
<label [matTooltip]="Upload a file" for="uploadFile">
<mat-icon>folder_open</mat-icon>
</label>
Run Code Online (Sandbox Code Playgroud)
所以基本上它隐藏了原始输入,并且使用标签我可以通过单击垫图标打开浏览文件窗口。
这很有效,但我想使用标签而不是标签<button mat-icon-button>来对图标产生很好的涟漪效果,但"for"标签中使用的<button>.
如果我mat-icon用上面的按钮标签将我的标签标签包裹起来,会发生什么,button看起来我想要它,但是当我点击什么都没有发生时,我想这是因为button上面label,所以label没有得到点击,我尝试使用z-index但不起作用。
关于如何解决这个问题的任何想法?
我试着做一个stackblitz,但是它没有错误地接受我的<mat-form-field>和<mat-label>标签,我导入了所需的组件,但是它不起作用。
但是,如果我在此处发布代码,也许无论如何都可以对我有所帮助,因为我不知道将<mat-label>标签移动到什么位置,<mat-form-field>而appearance="outline"当标签位于中间时使用with 时,我遇到了CSS问题。的input field,我不能移动它,我希望它为中心,但它是在的底部mat-form-field。
如果我调整position:absolute值,问题是,当单击发生时,当标签超出字段上方时,这些规则也会被应用,将浮动标签移动到错误的位置。
代码:
<div
id="test"
fxLayout="row"
fxLayoutGap="12px"
fxLayoutAlign="start center"
[class.hasFocus]="numberMatInput.value">
<mat-form-field appearance="outline">
<mat-label>KM</mat-label>
<input matInput #numberMatInput [formControl]="numberInput">
</mat-form-field>
</div>
Run Code Online (Sandbox Code Playgroud)
和CSS:
#test ::ng-deep .mat-form-field-appearance-outline {
width: 65px;
height: 45px;
line-height: 1.725;
}
#test ::ng-deep .mat-form-field-appearance-outline .mat-form-field-flex {
padding: 0px 10px 0px 10px;
}
#test ::ng-deep .mat-form-field-infix {
padding: 3px 0 3px 0;
}
Run Code Online (Sandbox Code Playgroud)
这是想要的结果:
因此,基本上,我需要在未触摸输入字段时移动标签,并在焦点对准时将其放置在上方浮动的相同空间中。
在我看来,这两者都只有一条规则,因此,如果我移动未改动的标签,则浮动的标签也会移动。
有人可以帮忙吗?谢谢
我有:
<mat-toolbar-row *ngFor="let idp of Idps | async; last as isLast">
Run Code Online (Sandbox Code Playgroud)
我需要访问它的长度:
<button [disabled]="(Idps| async)?.length===1" [ngClass]="{'disabledBtn': !(Idps | async)?.length > 1}"
Run Code Online (Sandbox Code Playgroud)
遗憾的是,这不起作用,我设法使该语法仅在这里起作用:
{{ (Idps | async)?.length }}
Run Code Online (Sandbox Code Playgroud)
如果我将其放入 HTML 中,它将在屏幕上显示长度,但我找不到用于我的[disabled]和[ngClass]标签的正确语法