0
你好,我已經堵了好幾天在這個問題上條件擋住了我的表單驗證
我向你解釋我有一個輸入或我根據一些條件申請的消息,但是我必須說,如果它是另一個條件多行文本使用的textarea的,如果它是一個內聯使用輸入
當我在輸入設置我的狀態* ngIf =「多!」我有一個問題我有錯誤消息:
燦未讀取未確定的財產「錯誤」
我已經應用的東西,我有一個div概括了我的輸入,包括我的病情,我因此添加基於myModel & & myModel.error使初始化對象
沒有什麼作品
,如果任何人有一個解決方案,我很感興趣
這是我的代碼:
<div class="input-container" [ngClass]="{
'empty-value': !model,
'focus': focus,
'blur': !focus,
'input-container-material': theme !== 'block' && theme !== 'inline',
'input-container-block': theme === 'block',
'input-container-inline': theme === 'inline',
'disabled': disabled}">
<div class="input-container__label color--{{labelColor || 'default'}}" *ngIf="label" (click)="_focusInputField()">
<div class="mi__wrapper mi__wrapper--inline">
<span>{{label}}<span *ngIf="required"> *</span></span>
<i class="mi mi-question" *ngIf="help" [maeTooltip]="help"></i>
</div>
</div>
<div class="input-container__content bg--{{bg || 'default'}} color--{{color || 'default'}} border--{{borderColor || 'default'}}">
<div *ngIf="!multiline">
<input
#inputField
class="input-container__input"
*ngIf="!multiline"
(focus)="onFocus()"
(blur)="onBlur()"
placeholder="{{placeholder}}"
name="{{name}}"
type="{{type || 'text'}}"
pattern="{{pattern}}"
minlength="{{minlength}}"
maxlength="{{maxlength}}"
min="{{min}}"
max="{{max}}"
[required]="required"
autocomplete="{{autocomplete}}"
[disabled]="disabled"
[readonly]="readonly"
[(ngModel)]="model"
#myModel="ngModel"
/>
</div>
<ng-container *ngTemplateOutlet="inputContent"></ng-container>
<div *ngIf="multiline" class="input-container__multiline">
<div class="input-container__input input-container__multiline__place-holder">{{model}}</div>
<textarea
#inputFieldMultiline
class="input-container__input input-container__multiline__input"
[(ngModel)]="model"
(focus)="onFocus()"
(blur)="onBlur()"
placeholder="{{placeholder}}"
name="{{name}}"
minlength="{{minlength}}"
maxlength="{{maxlength}}"
[required]="required"
[disabled]="disabled"
[readonly]="readonly"
#myModel="ngModel"
></textarea>
</div>
</div>
<ng-container *ngTemplateOutlet="inputContent"></ng-container>
{{hint}}
</div>
<ng-template #inputContent>
<div class="input-container__hints" *ngIf="this.theme !== 'inline'">
<div class="input-container__hints--left">
<div *ngIf="myModel && myModel.errors && myModel.touched" class="alert-error">
<div [hidden]="!myModel.errors.required">
<i class="mi mi-warning"></i>
{{ValidationHints.required}}
</div>
<div [hidden]="!myModel.errors.minlength">
<i class="mi mi-warning"></i>
{{ValidationHints.minlength}}
</div>
<div [hidden]="!myModel.errors.maxlength">
<i class="mi mi-warning"></i>
{{ValidationHints.maxlength}}
</div>
<div [hidden]="!myModel.errors.pattern">
<i class="mi mi-warning"></i>
{{ValidationHints.pattern}}
</div>
</div>
</div>
<div class="input-container__hints--right" *ngIf="withCharCount">
{{(model?.length || 0) + (maxlength ? ('/' + maxlength) : '')}}
</div>
</div>
</ng-template>
謝謝
我們可以看到組件中的TypeScript代碼嗎?我假設myModel在組件第一次加載時未初始化。 –
我的腳本代碼是在答案 – ouanounou
任何答案? – ouanounou