ts-angular-snippets-soygeekgirl READMEDESARROLLA EN ANGULAR MÁS RAPIDO CON ESTOS ATAJOS FeaturesPara HTML_si _irc _ircf ngfor _for ngforli _forli _ifs TSinterface _cfi crear interface a partir del nombre del fichero _ci crear interface a partir del texto seleccionado enum _cfe crear enum a partir del nombre del fichero _ce crear enum a partir del texto seleccionado types _cft crear type a partir del nombre del fichero _ct crear type a partir del texto seleccionado private variable constructor _pv crear variable privada de solo lectura public variables _puvb crear public var boolean _puvs crear public var string _puvn crear public var number _puva crear public var array TODO _td CONDICIONALES _c| _c& Known IssuesTienes dudas, hay problemas ¿?, escribeme al linkedin Release NotesTest de creación de atajos para html y ts 0.0.2Se agregaron nuevos atajos para variables públicas, creación de interface, enum y types. Se agregó una mini guía en el README para empezar en angular. ¡Gracias por usar ts-angular-snippets-soygeekgirl! MINI GUIA PARA ANGULAR TSANGULAR GUIA DE PRACTICAS COMUNES -PARA TRABAJAR EN EQUIPO-Luego de cometer ciertos errores al trabajar sola o incluso en equipo, me di cuenta que la forma de llevar una estabilidad (TRANQUILIDAD) mientras desarrollas o mantienes un proyecto, es que el código mantega ciertas reglas o estructura, por lo que he decidido crear esta pequeña guia o mini guia o pasos, para asi tener un estandar al escribir código y trabajar de forma más fluida, respetando y adoptando 'practicas' que se consideran al escribir un código limpio. Usar Angular CLIAngular CLI Usemos Angular CLI para generar los nuevos componentes, directivas, módulos, servicios y pipes. Comandos CLI ANGULAR
OperadoresOptional chaining (?.)
Operador ternario (? : ):) condición ? valorVerdadero : valorFalso
?? nullish coalescing Si el valor de la izquierda, es null o undefined devuelve lo de la derecha
! operador de aserción no nula Indica al compilador que una variable o expresión no puede ser nula o undefined.
Destructuring assignment
Variables, funciones, métodosUsemos nombres descriptivos, que al leerlos infieras lo que hacen o lo que es , por alguna parte lei lo de los 5 seg para variables, (CUANDO SE TE CAE LA COMIDA , SI LA RECOGES EN ESTE TIEMPO ESTARAS BIEN, O ESO DICEN) , si te paras y lees el nombre de tu variable o método y en 5 segundo te cuesta SABER LO QUE HACE O LO QUE ES, entonces cambialo , si no, en el futuro no sabras lo que hace y a tu compañero le haces la vida cuadritos JAJAJA (L) boolean , que empiecen por is y sin negación, isValid , isDisabledSaveButton Métodos getCurrentType() o getCurrentTypeById(id:number):void Los métodos si no devuelven nada entonces tipado void, si no, el tipado que corresponda , o su DTO , en el caso de manipular datos. Usa public o private , segun sea el caso por ejemplo
Constructorusa: private readonly _nombre: Componente con el _ para el nombre que usaras por ej this._servicio.metodo() InterfaceDefine estructuras de objetos con propiedades y métodos. Permite una mayor flexibilidad y reutilización en la definición de tipos.
EnumUsemos para conjuntos de valores finitos y relacionados, como tipos de usuario, roles, estados, etc. Ofrece mayor seguridad de tipos y legibilidad
TypesUsemos alias para tipos complejos o primitivos, simplificando la sintaxis. Adecuado para tipos que no necesitan lógica o propiedades adicionales.
Models como CLASS, INTERFACE O DTO?Usemos interface como DTO, para manipular las peticiones de datos, ya que la interface nos permite un contrato con los tipos y lo que tendremos, o lo que nos llega de respuesta, por ejemplo en una petición get, además de esta forma podemos aprovechar herramientas que permiten de forma rápida convertir un json a interface como RapidApi o JSON to TS. Seguro hay más, sin embargo estas son las que he probado y me funcionan de forma eficiente y puedo recomendar
Nombrar ficheros/archivos o directorios/carpetasMantener Reglas se vuelve muy importante para la mantener la legibilidad de código. Usaremos guion ("-") para separar palabras dentro del nombre del fichero y punto (".") para separar el anterior del tipo de archivo. El patrón recomendado es:
BarrelsNOTA--> ESTO LO COPIE DE LA GUIA QUE MENCIONO ABAJO , LO HABIA USADO EN UN PROYECTO CON VUEX, PERO DESCONOCIA QUE LA TÉCNICA SE LLAMA BARRELS. Para ayudar a la organización del proyecto podemos utilizar conceptos como "Barrels". La principal idea es agregar un archivo llamado "index.ts" para cada una de las carpetas que contengan un archivo .ts. Dentro de este se exportará cada una de las variables exportables de los .ts permitiendo crear una especie de jerarquía que nos va a ayudar a acortar largas cadenas de imports. Ejemplo:Supongamos 3 componentes diferentes dentro de
Agregando este barrel dentro de
Ahora solo tendríamos que importar lo que necesitemos de este barrel
Lazy LoadingCarga solo los modulos que vas usando
Angular Coding StylePuedes revisar la guia oficialAngular Coding Style:
Mis referencias GUIA DE ESTILO OFICIAL DE ANGULAR GUIA DE ESTILO GOOGLE ANGULARJS GUIA DE ESTILO GOOGLE TS github.com/USpiri/angular-guideline GUIA DE ESTILO GOOGLE TS For more information@soygeekgirl Linkedin Enjoy! |