sp-dev-fx-webparts/samples/react-multipage
Velin Georgiev 5ca1a89c85 New SPFx assets advanced sample and minor readme fix (#243)
* react-provision-assets sample added. provides advanced techniques for provisioning lists, libraries, fields and more.

* README drop icon changed to GA

I updated the drop icon from drop4 to GA so not to cause confusion when someone is looking at the README.

* README file updated
2017-06-18 17:07:24 +02:00
..
.vscode Added React multipage sample (#62) 2016-11-22 15:46:35 +02:00
assets Added React multipage sample (#62) 2016-11-22 15:46:35 +02:00
config React Multipage updated to GA build. Update typings, ChartJS v2 (#211) 2017-06-12 08:58:40 +02:00
src React Multipage updated to GA build. Update typings, ChartJS v2 (#211) 2017-06-12 08:58:40 +02:00
typings React Multipage updated to GA build. Update typings, ChartJS v2 (#211) 2017-06-12 08:58:40 +02:00
.editorconfig Added React multipage sample (#62) 2016-11-22 15:46:35 +02:00
.gitattributes Added React multipage sample (#62) 2016-11-22 15:46:35 +02:00
.gitignore Added React multipage sample (#62) 2016-11-22 15:46:35 +02:00
.npmignore Added React multipage sample (#62) 2016-11-22 15:46:35 +02:00
.yo-rc.json Added React multipage sample (#62) 2016-11-22 15:46:35 +02:00
README.md New SPFx assets advanced sample and minor readme fix (#243) 2017-06-18 17:07:24 +02:00
gulpfile.js Added React multipage sample (#62) 2016-11-22 15:46:35 +02:00
package.json React Multipage updated to GA build. Update typings, ChartJS v2 (#211) 2017-06-12 08:58:40 +02:00
react-multipage.njsproj Added React multipage sample (#62) 2016-11-22 15:46:35 +02:00
tsconfig.json React Multipage updated to GA build. Update typings, ChartJS v2 (#211) 2017-06-12 08:58:40 +02:00

README.md

React multi-page client-side web part

Summary

Sample SharePoint Framework client-side web parts built using React illustrating building multi-page web parts.

Poll

Sample poll web part allowing users to vote and view the results.

Poll web part built on the SharePoint Framework using React

Used SharePoint Framework Version

drop

Applies to

Solution

Solution Author(s)
react-multipage Waldek Mastykarz (MVP, Rencore, @waldekm)

Version history

Version Date Comments
1.0.1 May 1 2017 Updated to SPFx GA
1.0.0 November 15, 2016 Initial release

Disclaimer

THIS CODE IS PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.


Prerequisites

  • Site Collection created under the /sites/ Managed Path

Minimal Path to Awesome

Poll web part

  • create list for the poll
    • in SharePoint create a new list
    • in the list add new column called NumVotes of type Number (you can change the name later if you want)
    • in the list add a few items - each representing one of the vote options in your poll (for example for a poll about favorite JavaScript frameworks you would add items like Angular, React, jQuery, etc.)
  • deploy SharePoint workbench
    • clone this repo
    • in the command line run
      • npm i
      • gulp serve --nobrowser
    • from the ./temp directory create a copy of the workbench.html file and rename it to workbench.aspx
    • in the workbench.aspx file change the value of the webAbsoluteUrl property to the absolute URL of your SharePoint site
    • upload the workbench.aspx file to a document library in your site
  • use the web part
    • in your web browser navigate to the workbench.aspx page uploaded in your SharePoint site
    • add the Poll web part to the canvas
    • in the configuration specify the Poll title and optionally the Poll description. Also specify the title of your poll list
    • confirm the changes by clicking the Apply button
    • select one of the vote options and click the Vote button to submit your vote

Poll web part built on the SharePoint Framework using React

Features

This project contains sample client-side web parts built on the SharePoint Framework using React illustrating working with multi-page web parts.

This sample illustrates the following concepts on top of the SharePoint Framework:

  • using React for building SharePoint Framework client-side web parts
  • using React components for building multi-page web parts
  • using React spread operator for passing multiple properties to React components
  • conditionally rendering React components
  • managing state in a parent component
  • navigating between the different pages without changing the URL
  • styling React applications using Office UI Fabric
  • using non-reactive web part property pane
  • chaining multiple ES6 promises
  • reading and updating SharePoint list items using the SharePoint Framework HttpClient
  • showing charts using Chart.js and React wrapper for Chart.js