Cómo agregar nuevos campos a la interfaz de inicio de sesión en la nube de comercio electrónico de SAP

Selector de componentes para la interfaz de inicio de sesión:cx-update-profile

Encuentre el nombre del componente correspondiente: UpdateProfileComponent:

El componente tiene solo una instancia de FormGroup.

¿Cuándo se asigna el valor a la forma del servicio? Copie en la clase Servicio, en lugar de usar el generador de formularios, cree la instancia de FormGroup manualmente. El FormGroupconstructor recibe un objeto JSON como parámetro, la clave es el nombre de los controles vinculados al HTML y el valor es el valor inicial de estos controles.

Este grupo de formularios es patchValueasignado :

URL de prueba:

http://localhost:4299/electronics-spa/en/USD/my-account/update-profile

Vincule el Elemento de entrada en el HTML a la instancia de FormControl en el Componente a través de la formControlNamedirectiva .

También existe tal isuso :

 protected user$ = this.userProfile
    .get()
    .pipe(filter((user): user is User => Boolean(user)));

Aquí ishay una type guardfunción, consulte este enlace .

Considere el siguiente ejemplo:

function isString(test: any): test is string{
    
    
    return typeof test === "string";
}

function example(foo: any){
    
    
    if(isString(foo)){
    
    
        console.log("it is a string" + foo);
        console.log(foo.length); // string function
    }
}
example("hello world");

Si la función devuelve verdadero después de llamar a isString, prueba que el parámetro de entrada testes realmente de tipo String. En este momento, el compilador de TypeScript considerará que en el isStringbloque de código IF protegido, fooel debe ser string, para que pueda se puede acceder directamente usando foo.length La propiedad de longitud de esta variable de cadena.

Setvalue y Patchvalue son métodos de Angular Formgroup. Ambos establecen el valor del control en el grupo de formulario. La diferencia obvia es que setvalue excludeno eliminar ciertos controles, mientras que patchvalue sí.

Así que digamos que tenemos un grupo de formularios con 2 controles: Nombre y Edad.

Esto no funciona si queremos establecer el valor de un control, por lo que tenemos que establecer el valor de dos controles:

formgroup.setValue({
    
    name: ‘Mocrosoft’, age:25});

Si un grupo de formularios contiene una cantidad considerable de instancias de control de formulario, es setValuenecesario enumerar todos los valores de estas instancias como setValueparámetros de entrada de .

Supongo que te gusta

Origin blog.csdn.net/i042416/article/details/123659938
Recomendado
Clasificación