الترجمة من خلال ضغطة زر
nameLength: number = 70;
translateNameToEnglishForSubject(source: any) {
this.googleTranslateService._translateArabicToEnglish(source).subscribe((res: any) => {
this.data.en_name = (res.data.translations[0].translatedText.length > this.nameLength) ? res.data.translations[0].translatedText.toString().substring(0, this.nameLength) : res.data.translations[0].translatedText;
});
}
translateNameToArabicForSubject(source: any) {
this.googleTranslateService._translateEnglishToArabic(source).subscribe((res: any) => {
this.data.ar_name = (res.data.translations[0].translatedText === this.nameLength) ? res.data.translations[0].translatedText.toString().substring(0, this.nameLength) : res.data.translations[0].translatedText;
});
}
<!-- اسم المكوّن بالعربي -->
<div fxFlex="50" fxLayout="column" fxLayoutAlign="space-between center">
<mat-form-field class="w-95" [appearance]="'outline'">
<mat-label>{{'LABELS.AR_INGREDIENT_NAME' | translate}}</mat-label>
<input #ar_name matInput [maxlength]="nameLength" formControlName="ar_name" [(ngModel)]="data.ar_name"
[placeholder]="'PLACEHOLDERS.AR_INGREDIENT_NAME' | translate">
<mat-icon [matTooltip]="'BUTTONS.TRANSLATE' | translate" matSuffix class="translate icon-edit"
*ngIf="ar_name.value.length !== 0"
(click)="translateNameToEnglishForSubject(data.ar_name)">g_translate</mat-icon>
<mat-icon class="icon-edit" *ngIf="ar_name.value.length === 0"
matSuffix>drive_file_rename_outline</mat-icon>
<mat-hint align="end">{{ar_name.value.length}} / {{nameLength}}</mat-hint>
<mat-error align="start" *ngIf="form.controls['ar_name'].hasError('required')">
{{'ERRORS.REQUIRED' | translate}}
</mat-error>
</mat-form-field>
</div>
<!-- اسم المكوّن بالإنجليزي -->
<div fxFlex="50" fxLayout="column" fxLayoutAlign="space-between center">
<mat-form-field class="w-95" [appearance]="'outline'">
<mat-label>{{'LABELS.EN_INGREDIENT_NAME' | translate}}</mat-label>
<input #en_name matInput [maxlength]="nameLength" formControlName="en_name" [(ngModel)]="data.en_name"
[placeholder]="'PLACEHOLDERS.EN_INGREDIENT_NAME' | translate">
<mat-icon [matTooltip]="'BUTTONS.TRANSLATE' | translate" matSuffix class="translate icon-edit"
*ngIf="en_name.value.length !== 0"
(click)="translateNameToArabicForSubject(data.en_name)">g_translate</mat-icon>
<mat-icon class="icon-edit" *ngIf="en_name.value.length === 0"
matSuffix>drive_file_rename_outline</mat-icon>
<mat-hint align="end">{{en_name.value.length}} / {{nameLength}}</mat-hint>
<mat-error align="start" *ngIf="form.controls['en_name'].hasError('required')">
{{'ERRORS.REQUIRED' | translate}}
</mat-error>
</mat-form-field>
</div>
الطريقة القديمة:
//------------------------------------------------
translateNameToEnglishForSubject(source: any) {
this.googleTranslateService._translateArabicToEnglish(source).subscribe((res: any) => {
this.item.en_name = res.data.translations[0].translatedText;
});
}
translateNameToArabicForSubject(source: any) {
this.googleTranslateService._translateEnglishToArabic(source).subscribe((res: any) => {
this.item.ar_name = res.data.translations[0].translatedText;
});
}
//------------------------------------------------
<mat-icon class="cursor-pointer" [matTooltip]="'BUTTONS.TRANSLATE' | translate" *ngIf="ar_name.value.length !== 0"
(click)="translateNameToEnglishForSubject(ar_name.value)" matSuffix>g_translate</mat-icon>
تعليقات
إرسال تعليق