{"id":1739,"date":"2015-09-15T11:00:16","date_gmt":"2015-09-15T10:00:16","guid":{"rendered":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/?p=1739"},"modified":"2015-09-15T08:33:18","modified_gmt":"2015-09-15T07:33:18","slug":"como-usar-typescript-en-un-proyecto-sharepointoffice-365","status":"publish","type":"post","link":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/como-usar-typescript-en-un-proyecto-sharepointoffice-365\/","title":{"rendered":"C\u00f3mo usar TypeScript en un proyecto SharePoint\/Office 365"},"content":{"rendered":"<p>Uno de los problemas que tenemos los \u00abtradicionales\u00bb desarrolladores de .NET (y por lo tanto de SharePoint), es el poco feeling que se siente por un<strong> lenguaje como JavaScript.<\/strong> Es un lenguaje no del agrado de muchos de ellos principalmente porque no se conoce su esencia y se quiere imitar el funcionamiento de un lenguaje totalmente diferente como C# o Java. Ahora bien, dada la importancia que ha cobrado JavaScript hasta el punto de ser el lenguaje referencia en cuanto a Web se refiere, cada vez <strong>surgen m\u00e1s generadores de JavaScript o llamados transpiladores.<\/strong> Lo que hacen es escribir en un lenguaje y su resultado es la generaci\u00f3n de JavaScript (bien escrito y sin errores). Transpiladores como <a href=\"http:\/\/coffeescript.org\/\" target=\"_blank\">CoffeScript<\/a>, <a href=\"http:\/\/www.webshaper.com\/new\/tutorial\/\" target=\"_blank\">WebShaper <\/a>o el propio <a href=\"http:\/\/www.typescriptlang.org\/\" target=\"_blank\">TypeScript<\/a>. De estos tres, \u00bfcu\u00e1l es la principal diferencia del lenguaje que se utiliza bien uno propio, F# o JavaScript? \u00a1Lo vemos!<\/p>\n<p><a href=\"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2015\/09\/typescript2.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-1766\" src=\"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2015\/09\/typescript2.jpg\" alt=\"typescript2\" width=\"600\" height=\"417\" srcset=\"https:\/\/encaminablogs.wpenginepowered.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2015\/09\/typescript2.jpg 647w, https:\/\/encaminablogs.wpenginepowered.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2015\/09\/typescript2-300x209.jpg 300w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/a><\/p>\n<p><!--more--><\/p>\n<h2>\u00bfQu\u00e9 es TypeScript?<\/h2>\n<p>Es un <span style=\"text-decoration: underline;\">super conjunto de JavaScript,<\/span> con lo cual todo lenguaje JavaScript funciona tal cual pero se establece una organizaci\u00f3n y un tipado que facilita el mantenimiento y escalabilidad de la aplicaci\u00f3n. <strong>Es un lenguaje Open Source creado por Microsoft<\/strong> y por el que est\u00e1 apostando bastante. Hasta tal punto que ha sido un nexo de uni\u00f3n entre Google y Microsoft para la creaci\u00f3n de la versi\u00f3n 2 de Angular. Dentro del equipo que ha trabajado en la creaci\u00f3n est\u00e1\u00a0<a title=\"Anders Hejlsberg\" href=\"https:\/\/es.wikipedia.org\/wiki\/Anders_Hejlsberg\">Anders Hejlsberg<\/a>, dise\u00f1ador de <a title=\"C\" href=\"https:\/\/es.wikipedia.org\/wiki\/C\">C#<\/a>.<\/p>\n<h2>\u00bfQu\u00e9 beneficio nos aporta?<\/h2>\n<ul>\n<li>Principalmente podemos tener la tranquilidad de que todo el c\u00f3digo que hemos escrito est\u00e1 sem\u00e1nticamente bien escrito. Podemos decir que sino compila es que algo hemos realizado mal (de igual forma que en otros lenguajes).<\/li>\n<li>El JavaScript generado est\u00e1 perfecto y cumpliendo con toda la potencia que nos da.<\/li>\n<li>Se puede modular de forma sencilla<\/li>\n<li>Se puede utilizar todos los Frameworks JS disponibles<\/li>\n<\/ul>\n<h2>\u00bfC\u00f3mo utilizarlo en SharePoint\/Office?<\/h2>\n<p>Como requisito previo,<strong> hay que instalar el plugin de TypeScript en Visual Studio.<\/strong> TypeScript se puede utilizar con la versi\u00f3n 2013 y con la versi\u00f3n 2015. Tambi\u00e9n se puede utilizar desde cualquier IDE como puede ser Sublime, Code, etc..<\/p>\n<p>En primer lugar, nos creamos el proyecto bien Farm Solution o App Solution. Una vez el proyecto est\u00e1 creado, sobre el fichero del proyecto editamos el mismo y a\u00f1adimos antes de que se cierre la etiqueta Project el siguiente fragmento de c\u00f3digo:<\/p>\n<pre class=\"brush: xml; title: ; notranslate\" title=\"\">\r\n&amp;lt;PropertyGroup Condition=&quot;'$(Configuration)' == 'Debug'&quot;&amp;gt;\r\n    &amp;lt;TypeScriptTarget&amp;gt;ES5&amp;lt;\/TypeScriptTarget&amp;gt;\r\n    &amp;lt;TypeScriptRemoveComments&amp;gt;false&amp;lt;\/TypeScriptRemoveComments&amp;gt;\r\n    &amp;lt;TypeScriptSourceMap&amp;gt;false&amp;lt;\/TypeScriptSourceMap&amp;gt;\r\n    &amp;lt;TypeScriptModuleKind&amp;gt;AMD&amp;lt;\/TypeScriptModuleKind&amp;gt;\r\n    &amp;lt;TypeScriptNoImplicitAny&amp;gt;true&amp;lt;\/TypeScriptNoImplicitAny&amp;gt;\r\n  &amp;lt;\/PropertyGroup&amp;gt;\r\n  &amp;lt;PropertyGroup Condition=&quot;'$(Configuration)' == 'Release'&quot;&amp;gt;\r\n    &amp;lt;TypeScriptTarget&amp;gt;ES5&amp;lt;\/TypeScriptTarget&amp;gt;\r\n    &amp;lt;TypeScriptRemoveComments&amp;gt;false&amp;lt;\/TypeScriptRemoveComments&amp;gt;\r\n    &amp;lt;TypeScriptSourceMap&amp;gt;false&amp;lt;\/TypeScriptSourceMap&amp;gt;\r\n    &amp;lt;TypeScriptModuleKind&amp;gt;AMD&amp;lt;\/TypeScriptModuleKind&amp;gt;\r\n    &amp;lt;TypeScriptNoImplicitAny&amp;gt;true&amp;lt;\/TypeScriptNoImplicitAny&amp;gt;\r\n  &amp;lt;\/PropertyGroup&amp;gt;\r\n  &amp;lt;Import Project=&quot;$(MSBuildExtensionsPath32)\\Microsoft\\VisualStudio\\v$(VisualStudioVersion)\\TypeScript\\Microsoft.TypeScript.targets&quot; Condition=&quot;Exists('$(MSBuildExtensionsPath32)\\Microsoft\\VisualStudio\\v$(VisualStudioVersion)\\TypeScript\\Microsoft.TypeScript.targets')&quot; \/&amp;gt;\r\n<\/pre>\n<p><a href=\"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2015\/09\/EstructuraTypeScript.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-1751 size-medium\" src=\"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2015\/09\/EstructuraTypeScript-158x300.jpg\" alt=\"EstructuraTypeScript\" width=\"158\" height=\"300\" srcset=\"https:\/\/encaminablogs.wpenginepowered.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2015\/09\/EstructuraTypeScript-158x300.jpg 158w, https:\/\/encaminablogs.wpenginepowered.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2015\/09\/EstructuraTypeScript.jpg 451w\" sizes=\"auto, (max-width: 158px) 100vw, 158px\" \/><\/a>Este fragmento de c\u00f3digo lo que le indica a Visual Studio es que cuando dentro del proyecto exista un fichero de TypeScript (extensi\u00f3n .ts), se tiene que compilar con el compilador apropiado. Adem\u00e1s tiene una serie de par\u00e1metros para la generaci\u00f3n del mismo como versi\u00f3n EcmaScript que va a generar. \u00a1\u00a1Ojo!! con esto porque SharePoint 2013 es compatible con Navagadores como IE8 que no soporta EcmaScript 5. Otra de las opciones que tiene es si todas las variables tienen que tener un tipo definido.<\/p>\n<p>Realizando esta modificaci\u00f3n dentro del proyecto podemos utilizar TypeScript de forma que ahora cada vez que generemos un fichero TS automaticamente cada vez que guardemos nos generar\u00e1 el fichero JS correspondiente.<\/p>\n<h2>\u00bfC\u00f3mo utilizar JSOM en TypScript?<\/h2>\n<p>Uno de los puntos fuertes que tiene TypeScript es que <strong>se puede integrar con librerias de terceros.<\/strong>\u00a0Para ello tan solo hace falta una definici\u00f3n de los tipos que tiene esa librer\u00eda y a\u00f1adirlos a nuestro proyecto. Por fortuna la comunidad ya se ha encargado de agregar todos los tipos de las librer\u00edas m\u00e1s populares y se puede descargar v\u00eda Nuget o en la siguiente url\u00a0<a href=\"http:\/\/definitelytyped.org\/\" target=\"_blank\">http:\/\/definitelytyped.org\/<\/a><\/p>\n<p>Una vez ya tenemos el fichero de los tipos, el siguiente paso es agregarlo dentro del fichero TypeScript que estamos desarrollando. Para ello, hay que arrastrar el fichero sobre el mismo o bien agregar esta linea :<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\n\/\/\/ &amp;lt;reference path=&quot;..\/..\/typings\/sharepoint\/sharepoint.d.ts&quot; \/&amp;gt;\r\n<\/pre>\n<p>A\u00f1adiendo esta referencia dentro de nuestro fichero tenemos Intellisense con todas las opciones que trae la API (con la ventaja de es una API no muy documentada):<br \/>\n<a href=\"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2015\/09\/intelisenseSP.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-1754 size-full\" src=\"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2015\/09\/intelisenseSP-e1442261532320.jpg\" alt=\"intelisenseSP\" width=\"600\" height=\"211\" \/><\/a><\/p>\n<p>Ahora bien, aqu\u00ed tienes un ejemplo de c\u00f3mo poder consultar una lista:<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\n      var result: Array&amp;lt;superHeroes&amp;gt; = new Array&amp;lt;superHeroes&amp;gt;();         \r\n            var list: SP.List = this._web.get_lists().getByTitle(&quot;SuperHeroes&quot;);\r\n            var camlQuery = new SP.CamlQuery();\r\n            camlQuery.set_viewXml('&amp;lt;View&amp;gt;&amp;lt;RowLimit&amp;gt;10&amp;lt;\/RowLimit&amp;gt;&amp;lt;\/View&amp;gt;');\r\n            var collListItem:SP.ListItemCollection = list.getItems(camlQuery);     \r\n            this._context.load(collListItem);\r\n            var context = this._context;\r\n            return new Promise&amp;lt;Array&amp;lt;superHeroes&amp;gt;&amp;gt;(function (resolve:any, reject:any ) {\r\n                context.executeQueryAsync(\r\n                    function () {\r\n                        var listItemEnumerator = collListItem.getEnumerator();\r\n\r\n                        while (listItemEnumerator.moveNext()) {\r\n                            var oListItem: SP.ListItem = listItemEnumerator.get_current();\r\n                            var itemInfo: superHeroes = new superHeroes(oListItem.get_id(), oListItem.get_item('Title'), oListItem.get_item('Photo'), oListItem.get_item('Sexo'));\r\n                            result.push(itemInfo);\r\n                        }\r\n                        return resolve(result);\r\n                    },\r\n                    function () {\r\n                        return reject(&quot;error&quot;);\r\n                    });\r\n            });           \r\n        }\r\n<\/pre>\n<h2>Conclusi\u00f3n<\/h2>\n<p>TypeScript es un <strong>lenguaje muy potente, que tiene las ventajas de lenguajes de servidor tipado, modular y m\u00e1s mantenible.<\/strong>\u00a0Junto con la ventaja de los lenguajes de cliente como son <strong>mayor velocidad y flexibilidad.<\/strong> Todo esto puede evitar muchos dolores de cabeza dentro de nuestros desarrollos ya que los Transpiladores (como TypeScript) nos dan el beneficio de una generaci\u00f3n correcta del lenguaje de cliente como JavaScript.<\/p>\n<p>P.D: Para conocer m\u00e1s acerca de TypeScript como lenguaje podeis leer estos articulos escritos por mi blog en <a href=\"http:\/\/geeks.ms\/blogs\/adiazcervera\" target=\"_blank\">Geeks.ms<\/a><\/p>\n<!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons generic via filter on the_content --><span class=\"et_bloom_bottom_trigger\"><\/span>","protected":false},"excerpt":{"rendered":"<p>Uno de los problemas que tenemos los \u00abtradicionales\u00bb desarrolladores de .NET (y por lo tanto de SharePoint), es el poco feeling que se siente por un lenguaje como JavaScript. Es un lenguaje no del agrado de muchos de ellos principalmente &hellip; <a href=\"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/como-usar-typescript-en-un-proyecto-sharepointoffice-365\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><!-- AddThis Advanced Settings generic via filter on get_the_excerpt --><!-- AddThis Share Buttons generic via filter on get_the_excerpt --><\/p>\n","protected":false},"author":8,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[100],"tags":[63,19,26,156],"class_list":["post-1739","post","type-post","status-publish","format-standard","hentry","category-javascript-2","tag-app-2","tag-javascript","tag-sharepoint","tag-typescript"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v18.2.1 (Yoast SEO v27.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>C\u00f3mo usar TypeScript en un proyecto SharePoint\/Office 365 - Desarrollando sobre SharePoint<\/title>\n<meta name=\"description\" content=\"En este articulo vamos a ver como poder utilizar TypeScript dentro de nuestros desarrollos de SharePoint\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/como-usar-typescript-en-un-proyecto-sharepointoffice-365\/\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:title\" content=\"C\u00f3mo usar TypeScript en un proyecto SharePoint\/Office 365 - Desarrollando sobre SharePoint\" \/>\n<meta name=\"twitter:description\" content=\"En este articulo vamos a ver como poder utilizar TypeScript dentro de nuestros desarrollos de SharePoint\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2015\/09\/typescript2.jpg\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Adri\u00e1n D\u00edaz\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"http:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/como-usar-typescript-en-un-proyecto-sharepointoffice-365\\\/#article\",\"isPartOf\":{\"@id\":\"http:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/como-usar-typescript-en-un-proyecto-sharepointoffice-365\\\/\"},\"author\":{\"name\":\"Adri\u00e1n D\u00edaz\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/#\\\/schema\\\/person\\\/c9bfaede1bfba9564bb7f500788782bb\"},\"headline\":\"C\u00f3mo usar TypeScript en un proyecto SharePoint\\\/Office 365\",\"datePublished\":\"2015-09-15T10:00:16+00:00\",\"mainEntityOfPage\":{\"@id\":\"http:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/como-usar-typescript-en-un-proyecto-sharepointoffice-365\\\/\"},\"wordCount\":1118,\"commentCount\":0,\"image\":{\"@id\":\"http:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/como-usar-typescript-en-un-proyecto-sharepointoffice-365\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2015\\\/09\\\/typescript2.jpg\",\"keywords\":[\"app\",\"JavaScript\",\"sharepoint\",\"typescript\"],\"articleSection\":[\"javascript\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"http:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/como-usar-typescript-en-un-proyecto-sharepointoffice-365\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"http:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/como-usar-typescript-en-un-proyecto-sharepointoffice-365\\\/\",\"url\":\"http:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/como-usar-typescript-en-un-proyecto-sharepointoffice-365\\\/\",\"name\":\"C\u00f3mo usar TypeScript en un proyecto SharePoint\\\/Office 365 - Desarrollando sobre SharePoint\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"http:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/como-usar-typescript-en-un-proyecto-sharepointoffice-365\\\/#primaryimage\"},\"image\":{\"@id\":\"http:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/como-usar-typescript-en-un-proyecto-sharepointoffice-365\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2015\\\/09\\\/typescript2.jpg\",\"datePublished\":\"2015-09-15T10:00:16+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/#\\\/schema\\\/person\\\/c9bfaede1bfba9564bb7f500788782bb\"},\"description\":\"En este articulo vamos a ver como poder utilizar TypeScript dentro de nuestros desarrollos de SharePoint\",\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"http:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/como-usar-typescript-en-un-proyecto-sharepointoffice-365\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"http:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/como-usar-typescript-en-un-proyecto-sharepointoffice-365\\\/#primaryimage\",\"url\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2015\\\/09\\\/typescript2.jpg\",\"contentUrl\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2015\\\/09\\\/typescript2.jpg\",\"width\":647,\"height\":450},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/#website\",\"url\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/\",\"name\":\"Desarrollando sobre SharePoint\",\"description\":\"Arquitectura, buenas pr\u00e1cticas y desarrollo sobre la nueva herramienta de Microsoft SharePoint 2016\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/#\\\/schema\\\/person\\\/c9bfaede1bfba9564bb7f500788782bb\",\"name\":\"Adri\u00e1n D\u00edaz\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/fe10b9eaf8ce4565ec75fba5a0d121c16186696e515cad2bedd42f6cf54e2007?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/fe10b9eaf8ce4565ec75fba5a0d121c16186696e515cad2bedd42f6cf54e2007?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/fe10b9eaf8ce4565ec75fba5a0d121c16186696e515cad2bedd42f6cf54e2007?s=96&d=mm&r=g\",\"caption\":\"Adri\u00e1n D\u00edaz\"},\"description\":\"Adri\u00e1n D\u00edaz es Ingeniero Inform\u00e1tico por la Universidad Polit\u00e9cnica de Valencia. Es MVP de Microsoft en la categor\u00eda Office Development desde 2014, MCPD de SharePoint 2010, Microsoft Active Profesional y Microsoft Comunity Contribuitor 2012. Cofundador del grupo de usuarios de SharePoint de Levante LevaPoint. Lleva desarrollando con tecnolog\u00edas Microsoft m\u00e1s de 10 a\u00f1os y desde hace 3 a\u00f1os est\u00e1 centrado en el desarrollo sobre SharePoint. Actualmente es Software &amp; Cloud Architect Lead en ENCAMINA.\",\"url\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/author\\\/desarrollandosobresharepoint\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"C\u00f3mo usar TypeScript en un proyecto SharePoint\/Office 365 - Desarrollando sobre SharePoint","description":"En este articulo vamos a ver como poder utilizar TypeScript dentro de nuestros desarrollos de SharePoint","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/como-usar-typescript-en-un-proyecto-sharepointoffice-365\/","twitter_card":"summary_large_image","twitter_title":"C\u00f3mo usar TypeScript en un proyecto SharePoint\/Office 365 - Desarrollando sobre SharePoint","twitter_description":"En este articulo vamos a ver como poder utilizar TypeScript dentro de nuestros desarrollos de SharePoint","twitter_image":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2015\/09\/typescript2.jpg","twitter_misc":{"Escrito por":"Adri\u00e1n D\u00edaz","Tiempo de lectura":"6 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/como-usar-typescript-en-un-proyecto-sharepointoffice-365\/#article","isPartOf":{"@id":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/como-usar-typescript-en-un-proyecto-sharepointoffice-365\/"},"author":{"name":"Adri\u00e1n D\u00edaz","@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/#\/schema\/person\/c9bfaede1bfba9564bb7f500788782bb"},"headline":"C\u00f3mo usar TypeScript en un proyecto SharePoint\/Office 365","datePublished":"2015-09-15T10:00:16+00:00","mainEntityOfPage":{"@id":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/como-usar-typescript-en-un-proyecto-sharepointoffice-365\/"},"wordCount":1118,"commentCount":0,"image":{"@id":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/como-usar-typescript-en-un-proyecto-sharepointoffice-365\/#primaryimage"},"thumbnailUrl":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2015\/09\/typescript2.jpg","keywords":["app","JavaScript","sharepoint","typescript"],"articleSection":["javascript"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/como-usar-typescript-en-un-proyecto-sharepointoffice-365\/#respond"]}]},{"@type":"WebPage","@id":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/como-usar-typescript-en-un-proyecto-sharepointoffice-365\/","url":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/como-usar-typescript-en-un-proyecto-sharepointoffice-365\/","name":"C\u00f3mo usar TypeScript en un proyecto SharePoint\/Office 365 - Desarrollando sobre SharePoint","isPartOf":{"@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/#website"},"primaryImageOfPage":{"@id":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/como-usar-typescript-en-un-proyecto-sharepointoffice-365\/#primaryimage"},"image":{"@id":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/como-usar-typescript-en-un-proyecto-sharepointoffice-365\/#primaryimage"},"thumbnailUrl":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2015\/09\/typescript2.jpg","datePublished":"2015-09-15T10:00:16+00:00","author":{"@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/#\/schema\/person\/c9bfaede1bfba9564bb7f500788782bb"},"description":"En este articulo vamos a ver como poder utilizar TypeScript dentro de nuestros desarrollos de SharePoint","inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/como-usar-typescript-en-un-proyecto-sharepointoffice-365\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/como-usar-typescript-en-un-proyecto-sharepointoffice-365\/#primaryimage","url":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2015\/09\/typescript2.jpg","contentUrl":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2015\/09\/typescript2.jpg","width":647,"height":450},{"@type":"WebSite","@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/#website","url":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/","name":"Desarrollando sobre SharePoint","description":"Arquitectura, buenas pr\u00e1cticas y desarrollo sobre la nueva herramienta de Microsoft SharePoint 2016","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Person","@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/#\/schema\/person\/c9bfaede1bfba9564bb7f500788782bb","name":"Adri\u00e1n D\u00edaz","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/secure.gravatar.com\/avatar\/fe10b9eaf8ce4565ec75fba5a0d121c16186696e515cad2bedd42f6cf54e2007?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/fe10b9eaf8ce4565ec75fba5a0d121c16186696e515cad2bedd42f6cf54e2007?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/fe10b9eaf8ce4565ec75fba5a0d121c16186696e515cad2bedd42f6cf54e2007?s=96&d=mm&r=g","caption":"Adri\u00e1n D\u00edaz"},"description":"Adri\u00e1n D\u00edaz es Ingeniero Inform\u00e1tico por la Universidad Polit\u00e9cnica de Valencia. Es MVP de Microsoft en la categor\u00eda Office Development desde 2014, MCPD de SharePoint 2010, Microsoft Active Profesional y Microsoft Comunity Contribuitor 2012. Cofundador del grupo de usuarios de SharePoint de Levante LevaPoint. Lleva desarrollando con tecnolog\u00edas Microsoft m\u00e1s de 10 a\u00f1os y desde hace 3 a\u00f1os est\u00e1 centrado en el desarrollo sobre SharePoint. Actualmente es Software &amp; Cloud Architect Lead en ENCAMINA.","url":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/author\/desarrollandosobresharepoint\/"}]}},"_links":{"self":[{"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/posts\/1739","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/comments?post=1739"}],"version-history":[{"count":0,"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/posts\/1739\/revisions"}],"wp:attachment":[{"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/media?parent=1739"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/categories?post=1739"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/tags?post=1739"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}