小编sm1*_*l3y的帖子

Angular 6-验证器模式不起作用

我在角度6中使用反应形式,并尝试在密码字段上进行一些验证。基本上,它必须超过8个字符,至少包含1个大写字母,并且至少包含1个符号。

我测试过的正则表达式是 ^(?=.*[A-Z])(?=.*[!@#\$%\^&\*])(?=.{9,})

这是我的登录组件ts的摘录:

  ngOnInit() {
        this.loginForm = this.formBuilder.group({
            userName: ['Username', [Validators.required]],
            password: ['Password', [Validators.pattern("^(?=.*[A-Z])(?=.*[!@#\$%\^&\*])(?=.{9,})")]]            
        });
    }
Run Code Online (Sandbox Code Playgroud)

这是我的表单组div:

 <div class="form-group">
                      <input type="password" formControlName="password" class="form-control" [ngClass]="{ 'is-invalid': submitted && f.password.errors }" />
                      <div *ngIf="submitted && f.password.errors" class="invalid-feedback">              
                          <div *ngIf="f.password.errors.pattern">Password must contain more than 8 characters, 1 upper case letter, and 1 special character</div>
                      </div>
                  </div>
Run Code Online (Sandbox Code Playgroud)

基本上,即使看起来正确,密码也不会生效。任何提示将不胜感激。

angular

4
推荐指数
1
解决办法
1万
查看次数

如何使用角度为 7 的 amcharts 4 将 y 轴格式化为货币

我已经查看了 amcharts 版本 4 ( https://www.amcharts.com/javascript-charts/ )的文档,但似乎无法找到如何将 y 轴格式化为货币。有关于以其他方式格式化 y 轴的文档,但货币似乎不是其中之一。有谁知道如何或从哪里开始?

https://www.amcharts.com/javascript-charts/

到目前为止,我有上面的图表,只需要知道如何或在哪里将 y 轴格式化为货币。当您将鼠标悬停在格式化为货币的行上时,我目前有标签,因为这相当简单。这是我创建轴的函数:

function createAxisAndSeries(field, name, opposite) {
          const valueAxis = chart.yAxes.push(new am4charts.ValueAxis());

          const series = chart.series.push(new am4charts.LineSeries());
          series.dataFields.valueY = field;
          series.dataFields.dateX = 'date';
          series.strokeWidth = 2;
          series.yAxis = valueAxis;
          series.name = name;
          series.tooltipText = '{name}: [bold]${valueY}[/]';
          series.tensionX = 0.8;

          const interfaceColors = new am4core.InterfaceColorSet();

          valueAxis.renderer.line.strokeOpacity = 1;
          valueAxis.renderer.line.strokeWidth = 2;
          valueAxis.renderer.line.stroke = series.stroke;
          valueAxis.renderer.labels.template.fill = series.stroke;
          valueAxis.renderer.opposite = opposite;
          valueAxis.renderer.grid.template.disabled = true;

          }
Run Code Online (Sandbox Code Playgroud)

amcharts amcharts4

4
推荐指数
1
解决办法
1017
查看次数

从数组传递变量时使用.hide()的问题

我有以下代码可以正常工作:

 $(function mvp() {
    var theMvp = ['#mvpWtd', '#mvpStd'];
    $.each(theMvp, function (index, value) {
        $(value + ' .budTySales').hide();
        $(value + ' .lySales').hide();
        $(value + ' .budReceipts').hide();
        $(value + ' .lyReceipts').hide();
    });
})
Run Code Online (Sandbox Code Playgroud)

根据jquery文档,我应该能够传递多个元素,然后是逗号而不是逐行执行(代码也少!).我尝试将我的代码更改为下面但它失败了...

$(function mvp() {
    var theMvp = ['#mvpWtd', '#mvpStd'];
    $.each(theMvp, function (index, value) {
        $(value + ' .budTySales',value + ' .lySales',value + ' .budReceipts',value + ' .lyReceipts').hide();
    });
})
Run Code Online (Sandbox Code Playgroud)

javascript jquery

3
推荐指数
1
解决办法
46
查看次数

Angular 7 - [ngModel] 不适用于 mat-select

不确定我哪里出错了,但我似乎无法让 ngModel 在以下情况下工作:

这是模板代码:

    <mat-select [ngModel]="data.dataObject[0].phase">
            <mat-option *ngFor="let phase of possiblePhases" [value]="phase">
                {{phase}}
            </mat-option>
    </mat-select>
Run Code Online (Sandbox Code Playgroud)

这是组件中可能的相数组:

possiblePhases: string[] = ['Test1', 'Test2', 'Test3'];
Run Code Online (Sandbox Code Playgroud)

最后这里是我试图绑定一个值的数据对象:

[数据对象1

选择器只返回数组中的一个值。

我试过像这样改变可能的阶段:

  possiblePhases = [
    {phase: 'Test1'},
    {phase: 'Test2'},
    {phase: 'Test3'}
  ];
Run Code Online (Sandbox Code Playgroud)

但这也不起作用。

angular-material angular

1
推荐指数
1
解决办法
4532
查看次数

通过状态挂钩使用 YUP 有条件地验证 Formik 字段?

我四处寻找,不确定这是否可能。本质上,我想使用 YUP 使用不是表单值的状态挂钩来验证 formik 表单。

 validationSchema={Yup.object({
          comments: Yup.string()
              .when(approvalState, {
                is: false,
                then: Yup.string().required('Comments are required when denying an approval.'),
              }),
        })}
Run Code Online (Sandbox Code Playgroud)

这是表单字段,它本质上是一个文本框:

这是提交按钮,它将状态值更改为 true:

<button className='buttonPrimary' type='submit' onClick={()=> setApprovalState(true)} disabled={formik.isSubmitting}>Approve</button>
Run Code Online (Sandbox Code Playgroud)

这是另一个也提交的按钮,将状态值更改为 false:

<button className={`buttonSecondary ${styles.marginRight}`} type='submit' onClick={()=> setApprovalState(false)} disabled={formik.isSubmitting}>Deny</button>
Run Code Online (Sandbox Code Playgroud)

状态值更新得很好,有什么方法可以根据状态有条件地验证文本框吗?

yup formik react-hooks

1
推荐指数
1
解决办法
6016
查看次数