{"id":2513,"date":"2016-10-25T11:00:43","date_gmt":"2016-10-25T09:00:43","guid":{"rendered":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/?p=2513"},"modified":"2018-07-18T12:36:19","modified_gmt":"2018-07-18T10:36:19","slug":"sharepoint-framework-personalizar-toolpart","status":"publish","type":"post","link":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-framework-personalizar-toolpart\/","title":{"rendered":"SharePoint Framework: Personalizar el Toolpart"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-3247\" src=\"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2016\/10\/Personalizar-toolpart.jpg\" alt=\"\" width=\"1156\" height=\"712\" srcset=\"https:\/\/encaminablogs.wpenginepowered.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2016\/10\/Personalizar-toolpart.jpg 1156w, https:\/\/encaminablogs.wpenginepowered.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2016\/10\/Personalizar-toolpart-300x185.jpg 300w, https:\/\/encaminablogs.wpenginepowered.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2016\/10\/Personalizar-toolpart-768x473.jpg 768w, https:\/\/encaminablogs.wpenginepowered.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2016\/10\/Personalizar-toolpart-1024x631.jpg 1024w\" sizes=\"auto, (max-width: 1156px) 100vw, 1156px\" \/><\/p>\n<p>Una de las tareas que m\u00e1s dolores de cabeza nos daba en las Farm Solution, era personalizar el toolpart ( o la barra de propiedades) del Webpart. Este nuevo Framework se ha facilitado mucho la vida, simplificando dicha tarea. En este art\u00edculo vamos a ver <strong>c\u00f3mo podemos a\u00f1adir diversos tipos de campos\u00a0<\/strong>(combobox, checkbox, multiselect), o <strong>p\u00e1ginas a nuestro ToolPart<\/strong> y <strong>c\u00f3mo rellenar dichos valores<\/strong> con valores propios de SharePoint.<\/p>\n<p><!--more--><\/p>\n<p>Utilizando Yeoman se crear\u00e1 la soluci\u00f3n. Para ello basta con el siguiente comando:<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\nyo @microsoft\/sharepoint\r\n<\/pre>\n<blockquote><p><strong>Nota:<\/strong> Para este ejemplo, puesto que lo que vamos a visualizar\u00a0 es solo el ToolPart, no hace falta que seleccionemos ning\u00fan framework Javascript.<\/p><\/blockquote>\n<p>Observamos el c\u00f3digo que nos ha generado la plantilla y confirmamos que dentro de la clase del WebPart disponemos de la siguiente propiedad:<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\n  protected get propertyPaneSettings(): IPropertyPaneSettings {\r\n    return {\r\n      pages: &#x5B;\r\n        {\r\n          header: {\r\n            description: strings.PropertyPaneDescription\r\n          },\r\n          groups: &#x5B;\r\n            {\r\n              groupName: strings.BasicGroupName,\r\n              groupFields: &#x5B;\r\n                PropertyPaneTextField('description', {\r\n                  label: strings.DescriptionFieldLabel\r\n                })\r\n              ]\r\n            }\r\n          ]\r\n        }\r\n      ]\r\n    };\r\n  }\r\n<\/pre>\n<p>De dicho c\u00f3digo, con un poco de l\u00f3gica podemos deducir que si a\u00f1adimos otro elemento en el ToolPart\u00a0 al array de la variable \u00abpages\u00bb, tendremos otra p\u00e1gina en el ToolPart.<\/p>\n<p>Cada p\u00e1gina est\u00e1 formada por una Cabecera que ser\u00e1 el elemento principal de la p\u00e1gina. A su vez, esta p\u00e1gina tendr\u00e1 de 1 a N grupos, siendo un grupo la agrupaci\u00f3n de varios campos que tienen relaci\u00f3n entre s\u00ed.<\/p>\n<p>Por ejemplo tenemos un WebPart que muestra las im\u00e1genes de una biblioteca de SharePoint. En este caso, tendremos un grupo Configuraci\u00f3n, en el que tendremos un campo para indicar el nombre de la lista donde va a estar ubicada la imagen en SharePoint. Para ello bastar\u00eda con el siguiente c\u00f3digo:<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\n  protected get propertyPaneSettings(): IPropertyPaneSettings {\r\n    return {\r\n      pages: &#x5B;\r\n        {\r\n          header: {\r\n            description: strings.PropertyPaneConfigurationDescription\r\n          },\r\n          groups: &#x5B;\r\n            {\r\n              groupName: strings.ConfigurationGroupName,\r\n              groupFields: &#x5B;\r\n                PropertyPaneTextField(&quot;list&quot;, {\r\n                  label: strings.DescriptionListSPLabel\r\n                })\r\n              ]\r\n            }\r\n          ]\r\n        }\r\n      ]\r\n    };\r\n  }\r\n<\/pre>\n<p>Si vemos el resultado, quiz\u00e1 no sea el esperado por el usuario, pues quedar\u00e1 as\u00ed:<br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-2518\" src=\"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2016\/10\/ToolPart.png\" alt=\"Toolpart\" width=\"337\" height=\"321\" srcset=\"https:\/\/encaminablogs.wpenginepowered.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2016\/10\/ToolPart.png 337w, https:\/\/encaminablogs.wpenginepowered.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2016\/10\/ToolPart-300x286.png 300w\" sizes=\"auto, (max-width: 337px) 100vw, 337px\" \/><\/p>\n<h2><strong>\u00bfC\u00f3mo modificamos el tipo de campo que se muestra en el ToolPart?<\/strong><\/h2>\n<p>El equipo de producto esta vez ha proporcionado bastantes facilidades a los desarrolladores pese a que el \u00abSPFX\u00bb esta en versi\u00f3n preview. Por este motivo dentro de la clase de nuestro WebPart a\u00f1adimos la siguientes referencias:<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\nimport {\r\n   BaseClientSideWebPart,\r\n  IPropertyPaneSettings,\r\n   IWebPartContext, \r\n   PropertyPaneTextField,\r\n   PropertyPaneCheckbox,\r\n  PropertyPaneChoiceGroup, \r\n  PropertyPaneDropdown, \r\n  PropertyPaneSlider, \r\n  PropertyPaneButton, \r\n  PropertyPaneToggle \r\n} from &quot;@microsoft\/sp-client-preview&quot;;\r\n<\/pre>\n<p>Pero,\u00a0 si en nuestro ejemplo modificamos el c\u00f3digo y reemplazamos las propiedades por \u00e9sta&#8230;<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\n  protected get propertyPaneSettings(): IPropertyPaneSettings {\r\n    return {\r\n      pages: &#x5B;\r\n        {\r\n          header: {\r\n            description: strings.PropertyPaneConfigurationDescription\r\n          },\r\n          groups: &#x5B;\r\n            {\r\n              groupName: strings.ConfigurationGroupName,\r\n              groupFields: &#x5B;\r\n                PropertyPaneDropdown(&quot;list&quot;, {\r\n                  label: strings.DescriptionListSPLabel,\r\n                   isDisabled: false, \r\n                  options: &#x5B; \r\n                    { key: 'Lista1', text: 'Lista1' }, \r\n                    { key: 'Lista2', text: 'Lista2' }, \r\n                    { key: 'Lista3', text: 'Lista3', isSelected: true } \r\n                  ]\r\n                })\r\n              ]\r\n            }\r\n          ]\r\n        }\r\n      ]\r\n    };\r\n  }\r\n<\/pre>\n<p>&#8230;la \u00abcosa\u00bb ya pinta mejor:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-2521\" src=\"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2016\/10\/ToolPart2.png\" alt=\"toolpart2\" width=\"331\" height=\"399\" srcset=\"https:\/\/encaminablogs.wpenginepowered.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2016\/10\/ToolPart2.png 331w, https:\/\/encaminablogs.wpenginepowered.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2016\/10\/ToolPart2-249x300.png 249w\" sizes=\"auto, (max-width: 331px) 100vw, 331px\" \/><br \/>\nA\u00fan nos queda un \u00faltimo paso: cargar los datos de forma din\u00e1mica. Para ello tenemos dos opciones:<br \/>\n<strong>Opci\u00f3n 1<\/strong><br \/>\n1.- Declaramos una variable privada:<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\nprivate _options: IPropertyPaneDropdownOption&#x5B;];\r\n<\/pre>\n<p>2.- Definimos un m\u00e9todo onInit en el que haremos la llamada al servicio Rest.<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\npublic onInit&amp;lt;T&amp;gt;(): Promise&amp;lt;T&amp;gt; {\r\n  let dataService = (this.context.environment.type === EnvironmentType.Test || this.context.environment.type === EnvironmentType.Local) ?\r\n    new MockListsService() :\r\n    new ListsService(this.context);\r\n\r\n  this._options = &#x5B;];\r\n\r\n  return new Promise&amp;lt;T&amp;gt;((resolve: (args: T) =&amp;gt; void, reject: (error: Error) =&amp;gt; void) =&amp;gt; {\r\n    dataService.getListNames().then(lists =&amp;gt; lists.forEach(list =&amp;gt; {\r\n      this._options.push(&amp;lt;IPropertyPaneDropdownOption&amp;gt;{\r\n        text: list,\r\n        key: list\r\n      });\r\n      resolve(undefined);\r\n    }))\r\n  });\r\n}\r\n<\/pre>\n<p>3.- Dentro de nuestra propiedad asignaremos la variable privada declarada previamente.<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\ngroupFields: &#x5B;\r\n                PropertyPaneDropdown(&quot;list&quot;, {\r\n                  label: strings.DescriptionListSPLabel,\r\n                   isDisabled: false,\r\n                  options: this._options\r\n                })\r\n             ]\r\n<\/pre>\n<p>Ahora bien, este proceso puede tener un <em>handicap\u00a0<\/em>y es que, si introducimos una consulta pesada, puede tardar en cargar el WebPart. En este caso, el equipo de producto a trav\u00e9s del <a href=\"https:\/\/github.com\/SharePoint\/sp-dev-docs\/wiki\/Async-data-fetch-in-the-property-pane\">repositorio de GitHub<\/a> plantea otra soluci\u00f3n.<\/p>\n<p><strong>Opci\u00f3n 2<\/strong><br \/>\n1.- No poner ning\u00fan c\u00f3digo en el OnInit<br \/>\n2.- A\u00f1adir la funci\u00f3n en la asignaci\u00f3n de las propertyPaneSettings de tal forma que solamente se haga la consulta cuando se consulte el ToolPart.<\/p>\n<h2>Conclusi\u00f3n<\/h2>\n<p>Las cosas cambian en SharePoint, y como hemos visto, para mejor. El nuevo Framework trae muchos elementos nuevos que facilitan la vida en el desarrollo y hacen que <strong>desarrollar en SharePoint sea algo bastante atractivo.<\/strong><\/p>\n<p>Lo visto en este art\u00edculo es solamente es un avance de todas las opciones disponibles.<br \/>\nEn posteriores art\u00edculos veremos c\u00f3mo podemos crear un elemento personalizado.<\/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>Una de las tareas que m\u00e1s dolores de cabeza nos daba en las Farm Solution, era personalizar el toolpart ( o la barra de propiedades) del Webpart. Este nuevo Framework se ha facilitado mucho la vida, simplificando dicha tarea. En &hellip; <a href=\"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-framework-personalizar-toolpart\/\">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":[180],"tags":[19,178,181],"class_list":["post-2513","post","type-post","status-publish","format-standard","hentry","category-spfx","tag-javascript","tag-spfx","tag-typescritp"],"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>SharePoint Framework: Personalizar el Toolpart - Desarrollando sobre SharePoint<\/title>\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\/sharepoint-framework-personalizar-toolpart\/\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:title\" content=\"SharePoint Framework: Personalizar el Toolpart - Desarrollando sobre SharePoint\" \/>\n<meta name=\"twitter:description\" content=\"Una de las tareas que m\u00e1s dolores de cabeza nos daba en las Farm Solution, era personalizar el toolpart ( o la barra de propiedades) del Webpart. Este nuevo Framework se ha facilitado mucho la vida, simplificando dicha tarea. En &hellip; Continue reading &rarr;\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2016\/10\/Personalizar-toolpart.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=\"4 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"http:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-framework-personalizar-toolpart\\\/#article\",\"isPartOf\":{\"@id\":\"http:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-framework-personalizar-toolpart\\\/\"},\"author\":{\"name\":\"Adri\u00e1n D\u00edaz\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/#\\\/schema\\\/person\\\/c9bfaede1bfba9564bb7f500788782bb\"},\"headline\":\"SharePoint Framework: Personalizar el Toolpart\",\"datePublished\":\"2016-10-25T09:00:43+00:00\",\"dateModified\":\"2018-07-18T10:36:19+00:00\",\"mainEntityOfPage\":{\"@id\":\"http:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-framework-personalizar-toolpart\\\/\"},\"wordCount\":791,\"commentCount\":0,\"image\":{\"@id\":\"http:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-framework-personalizar-toolpart\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2016\\\/10\\\/Personalizar-toolpart.jpg\",\"keywords\":[\"JavaScript\",\"spfx\",\"typescritp\"],\"articleSection\":[\"spfx\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"http:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-framework-personalizar-toolpart\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"http:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-framework-personalizar-toolpart\\\/\",\"url\":\"http:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-framework-personalizar-toolpart\\\/\",\"name\":\"SharePoint Framework: Personalizar el Toolpart - Desarrollando sobre SharePoint\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"http:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-framework-personalizar-toolpart\\\/#primaryimage\"},\"image\":{\"@id\":\"http:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-framework-personalizar-toolpart\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2016\\\/10\\\/Personalizar-toolpart.jpg\",\"datePublished\":\"2016-10-25T09:00:43+00:00\",\"dateModified\":\"2018-07-18T10:36:19+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/#\\\/schema\\\/person\\\/c9bfaede1bfba9564bb7f500788782bb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"http:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-framework-personalizar-toolpart\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"http:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/sharepoint-framework-personalizar-toolpart\\\/#primaryimage\",\"url\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2016\\\/10\\\/Personalizar-toolpart.jpg\",\"contentUrl\":\"https:\\\/\\\/blogs.encamina.com\\\/desarrollandosobresharepoint\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2016\\\/10\\\/Personalizar-toolpart.jpg\",\"width\":1156,\"height\":712},{\"@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":"SharePoint Framework: Personalizar el Toolpart - Desarrollando sobre 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\/sharepoint-framework-personalizar-toolpart\/","twitter_card":"summary_large_image","twitter_title":"SharePoint Framework: Personalizar el Toolpart - Desarrollando sobre SharePoint","twitter_description":"Una de las tareas que m\u00e1s dolores de cabeza nos daba en las Farm Solution, era personalizar el toolpart ( o la barra de propiedades) del Webpart. Este nuevo Framework se ha facilitado mucho la vida, simplificando dicha tarea. En &hellip; Continue reading &rarr;","twitter_image":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2016\/10\/Personalizar-toolpart.jpg","twitter_misc":{"Escrito por":"Adri\u00e1n D\u00edaz","Tiempo de lectura":"4 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-framework-personalizar-toolpart\/#article","isPartOf":{"@id":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-framework-personalizar-toolpart\/"},"author":{"name":"Adri\u00e1n D\u00edaz","@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/#\/schema\/person\/c9bfaede1bfba9564bb7f500788782bb"},"headline":"SharePoint Framework: Personalizar el Toolpart","datePublished":"2016-10-25T09:00:43+00:00","dateModified":"2018-07-18T10:36:19+00:00","mainEntityOfPage":{"@id":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-framework-personalizar-toolpart\/"},"wordCount":791,"commentCount":0,"image":{"@id":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-framework-personalizar-toolpart\/#primaryimage"},"thumbnailUrl":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2016\/10\/Personalizar-toolpart.jpg","keywords":["JavaScript","spfx","typescritp"],"articleSection":["spfx"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-framework-personalizar-toolpart\/#respond"]}]},{"@type":"WebPage","@id":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-framework-personalizar-toolpart\/","url":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-framework-personalizar-toolpart\/","name":"SharePoint Framework: Personalizar el Toolpart - Desarrollando sobre SharePoint","isPartOf":{"@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/#website"},"primaryImageOfPage":{"@id":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-framework-personalizar-toolpart\/#primaryimage"},"image":{"@id":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-framework-personalizar-toolpart\/#primaryimage"},"thumbnailUrl":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2016\/10\/Personalizar-toolpart.jpg","datePublished":"2016-10-25T09:00:43+00:00","dateModified":"2018-07-18T10:36:19+00:00","author":{"@id":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/#\/schema\/person\/c9bfaede1bfba9564bb7f500788782bb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-framework-personalizar-toolpart\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"http:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/sharepoint-framework-personalizar-toolpart\/#primaryimage","url":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2016\/10\/Personalizar-toolpart.jpg","contentUrl":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-content\/uploads\/sites\/8\/2016\/10\/Personalizar-toolpart.jpg","width":1156,"height":712},{"@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\/2513","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=2513"}],"version-history":[{"count":0,"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/posts\/2513\/revisions"}],"wp:attachment":[{"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/media?parent=2513"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/categories?post=2513"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.encamina.com\/desarrollandosobresharepoint\/wp-json\/wp\/v2\/tags?post=2513"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}