Con la llegada del SharePoint Framework (SPFX) aparece una aspecto con el que inicialmente no contábamos, o más bien, no lo considerábamos importante. Se trata de la actualización de nuestra solución a una nueva versión.
Partimos de la base de que el desarrollador de SharePoint estaba acostumbrado a crear el WebPart y una vez el desarrollo ha finalizado, no tiene que preocuparse por nada. Esta forma de trabajar podemos migrarla a la hora de trabajar con el SPFX: creamos un proyecto utilizando Yeoman y una vez creado, no tenemos que modificar nada.
Pero por regla general, no pensamos que los tiempos han cambiado y ahora mismo no tenemos nuestro servidor en nuestras infraestructuras. Lo que tenemos es un SharePoint Online (en algún datacenter de Microsoft) sin importarnos donde esté alojado. Además, nuestros desarrollos son principalmente del FrontEnd, con todo lo maravilloso que esto tiene. Es decir las herramientas de FrontEnd que se utilizan en el SPFX, son Yeoman, Gulp, Typescript, React, etc… todas ellas tienen una evolución que hace que puedan temblar los cimientos de nuestros desarrollos. Desde que se ha encontrado un fallo grave y que urge modificarlo o incluso alguno un poco más drástico como que haya dejado de funcionar algún elemento del propio FrameWork. Y claro, cuando esto ocurre nuestra solución hay que actualizarla sí o sí.
En primer lugar tenemos que ver si tenemos el último template de Yeoman, para ello lanzamos el siguiente comando:
npm outdated --global
Si dentro de los paquetes que tenemos instalados está sin actualizar el generador de SharePoint, lanzamos la siguiente instrucción:
npm install @microsoft/generator-sharepoint --global
Una vez dentro de nuestra solución, lo que debemos de hacer es ir al fichero package.json y actualizar las referencias del paquete a la nueva versión. En este caso tendríamos que poner todos los paquetes en la versión 1.4.1 que es la actual. Quedaría de la siguiente forma:
Una vez actualizado estos paquetes tendríamos que ejecutar el siguiente comando para que se actualicen los paquetes pertinentes:
npm install
Para finalizar, tendriamos que volver a lanzar un Bundle de nuestra solución y …..
– Modificación en los Typings de React
– Deprecaron el GraphClient
– Solventaron una issueç
– Soporte para NodeJS
Viendo todo lo que le puede pasar a nuestra solución, es posible que si hacemos uso del GraphClient tengamos que rehacer estos cambios y adaptarlos a una forma más estable. Otro de los posibles errores que se puedan tener, es que alguna definición de ReactJS se haya modificado y por lo tanto, dé un error de tipado en nuestro código.
Por regla general, es conveniente siempre tener la última versión aunque la decisión de cuándo migrar y cuándo no, depende de varios factores:
1.- La solución está en desarrollo. En este caso no hay duda hay que actualizarlo sí o sí.
2.- La solución está ya en producción. En este caso, depende de que tenga la mejora. Si es un bug crítico que afecta a la estabilicación de dicho desarrollo, habría que migrarlo y planificar su posterior despliegue y actualización. Si los cambios son menores y no afectan al desarrollo, dejaría de migrarlo para planificarlo en la próxima release.
Como he comentado al inicio del artículo, lamentablemente ésto no es todo :). Si nuestro desarrollo hace uso de alguna librería de terceros, se actualiza sobreb ésta y tiene algún upgrade que sea crítico, también debemos actualizarlo. Por ejemplo:
Estamos haciendo uso del sdk de applicattion Insight. Se ha procedido a una modificación de la API Rest, y si no actualizamos, nos quedamos sin información de diagnostico…En este caso, no nos queda otra opción que proceder a actualizar.
En este artículo hemos visto todo lo que significa el nuevo modelo de desarrollo de SPFX.
No solo nos tenemos que centrar en el desarrollo (que es lo que más nos gusta), sino que tenemos que tener en cuenta aspectos como el versionado del template, los últimos cambios que se producen, qué implicaciones conlleva la actualización, etc…
Todo esto no es ninguna sorpresa para la gente dedicada al mundo Front, pero los Office Developers tienen que ir acostumbrándose a esta nueva forma de desarrollo y cuidar más todo el ciclo de vida.
Este sitio web utiliza cookies para que tengas la mejor experiencia de usuario. Si continuas navegando, estás dando tu consentimiento para aceptar las cookies y también nuestra política de cookies (esperemos que no te empaches con tanta cookie 😊)