最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

使用 ng

网站源码admin36浏览0评论

使用 ng

使用 ng

我是 angular 的新手。 我正在尝试使用 ng-for 制作一个具有 bs-stepper 的组件。我正在从数据库接收问题数据。我想要的只是用户将逐步回答问题。我需要给“div”不同的 ID。有人知道怎么做吗?

我试图给 "div" id 提供 ng-for 索引

<section class="horizontal-wizard">
      <div id="stepper1" class="bs-stepper horizontal-wizard-example">
        <div *ngFor="let question of questions; let i = index" class="bs-stepper-header">
          <div class="step" data-target="#a{{i}}">
            <button class="step-trigger">
              <span class="bs-stepper-box"><i data-feather="arrow-left" (click)="horizontalWizardStepperPrevious()" class="align-middle mr-sm-25 mr-0"></i></span>
              <span class="bs-stepper-label">
                <span class="bs-stepper-title">Questions</span>
                <span class="bs-stepper-subtitle">Fill the Blanks</span>
              </span>
            </button>
          </div>
          
          
        </div>
        <div class="bs-stepper-content">
          <form (ngSubmit)="(HWForm.form.valid)" #HWForm="ngForm">
            <div>
            <div *ngFor="let question of questions; let i = index" id="a{{i}}" class="content">
              <form #accountDetailsForm="ngForm">
                <div class="content-header">
                  <app-questions-item></app-questions-item>
                </div>


                <div class="d-flex justify-content-between">
                  
                  <button
                    (click)="horizontalWizardStepperNext(accountDetailsForm)"
                    type="submit"
                    class="btn btn-primary btn-next"
                    rippleEffect
                  >
                    <span class="align-middle d-sm-inline-block d-none">Next</span>
                    <i data-feather="arrow-right" class="align-middle ml-sm-25 ml-0"></i>
                  </button>
                </div>
              </form>
            </div>
          </div>
          </form>
        </div>
      </div>
    </section>
回答如下:

您使用

ngFor
索引为每个
div
元素生成唯一 ID 的方法是正确的。但是,您似乎对内部循环中的所有
id
元素使用了相同的
div
,这可能会导致渲染和功能出现问题。

要为每个

div
元素生成唯一 ID,您可以将外循环索引与内循环索引连接起来。这是一个例子:


    <div *ngFor="let question of questions; let i = index" class="bs-stepper-header">
      <div class="step" data-target="#a{{i}}">
        ...
      </div>
    </div>
    <div class="bs-stepper-content">
      <form>
        <div>
          <div *ngFor="let question of questions; let i = index">
            <div id="a{{i}}{{j}}" class="content">
              ...
            </div>
          </div>
        </div>
      </form>
    </div>

在这个例子中,每个

id
元素的
div
是通过连接外循环索引
i
和内循环索引
j
生成的。

或者,您可以使用数据库中每个问题的唯一标识符作为

id
元素(如果可用)。
div

希望对您有所帮助!如果您还有其他问题,请告诉我。

与本文相关的文章

发布评论

评论列表(0)

  1. 暂无评论