sp-dev-fx-webparts/samples/angular-multipage/README.md

127 lines
6.3 KiB
Markdown
Raw Normal View History

---
page_type: sample
products:
- office-sp
languages:
- javascript
- typescript
extensions:
contentType: samples
technologies:
- SharePoint Framework
platforms:
- AngularJS
createdDate: 11/1/2016 12:00:00 AM
---
# Angular multi-page client-side web part
2016-11-03 05:45:39 -04:00
## Summary
This is a sample SharePoint Framework client-side web part built using Angular, illustrating building multi-page web parts.
2016-11-03 05:45:39 -04:00
### Poll
This sample contains a poll web part allowing users to vote and view the results.
2016-11-03 05:45:39 -04:00
![Poll web part built on the SharePoint Framework using Angular](./assets/poll-preview.gif)
2021-11-07 01:33:53 -05:00
## Compatibility
![SPFx 0.5.0](https://img.shields.io/badge/SPFx-0.5.0-orange.svg)
![Node.js v6](https://img.shields.io/badge/Node.js-v6-green.svg)
![Compatible with SharePoint Online](https://img.shields.io/badge/SharePoint%20Online-Compatible-green.svg)
![Compatible SharePoint 2019](https://img.shields.io/badge/SharePoint%20Server%202019-Compatible-green.svg)
![Compatible with SharePoint 2016 (Feature Pack 2)](https://img.shields.io/badge/SharePoint%20Server%202016%20(Feature%20Pack%202)-Compatible-green.svg)
![Local Workbench Compatible](https://img.shields.io/badge/Local%20Workbench-Compatible-green.svg)
![Hosted Workbench Compatible](https://img.shields.io/badge/Hosted%20Workbench-Compatible-green.svg)
2021-04-26 02:08:59 -04:00
2016-11-03 05:45:39 -04:00
## Applies to
* [SharePoint Framework Developer Preview](https://docs.microsoft.com/sharepoint/dev/spfx/sharepoint-framework-overview)
* [Office 365 developer tenant](https://docs.microsoft.com/sharepoint/dev/spfx/set-up-your-developer-tenant)
2016-11-03 05:45:39 -04:00
## Solution
Solution|Author(s)
--------|---------
2021-04-26 02:18:35 -04:00
angular-multipage|[Waldek Mastykarz](https://github.com/waldekmastykarz) (MVP, Rencore, @waldekm)
2016-11-03 05:45:39 -04:00
## Version history
Version|Date|Comments
-------|----|--------
1.0.0|November 1, 2016|Initial release
## 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 Angular](./assets/poll-preview.gif)
## Features
This project contains sample client-side web parts built on the SharePoint Framework using Angular illustrating working with multi-page web parts.
This sample illustrates the following concepts on top of the SharePoint Framework:
- using Angular v1.x with TypeScript for building SharePoint Framework client-side web parts
- using Angular UI Router for building multi-page web parts
- navigating between the different pages without changing the URL
- building parent and child states with Angular UI Router
- passing web part configuration into an Angular application
- reacting to Angular events in a SharePoint Framework client-side web part
- styling Angular applications using Office UI Fabric
- using non-reactive web part property pane
- using conditional rendering for one-time web part setup
- chaining multiple Angular promises
- reading and updating SharePoint list items using Angular
- showing charts using [Chart.js](http://www.chartjs.org) and [Angular Chart directives](https://jtblin.github.io/angular-chart.js/)
2021-11-01 21:07:49 -04:00
## Help
2021-04-26 02:08:59 -04:00
2021-11-20 23:50:27 -05:00
We do not support samples, but this community is always willing to help, and we want to improve these samples. We use GitHub to track issues, which makes it easy for community members to volunteer their time and help resolve issues.
If you're having issues building the solution, please run [spfx doctor](https://pnp.github.io/cli-microsoft365/cmd/spfx/spfx-doctor/) from within the solution folder to diagnose incompatibility issues with your environment.
You can try looking at [issues related to this sample](https://github.com/pnp/sp-dev-fx-webparts/issues?q=label%3A"sample%3A%20angular-multipage" ) to see if anybody else is having the same issues.
You can also try looking at [discussions related to this sample](https://github.com/pnp/sp-dev-fx-webparts/discussions?discussions_q=angular-multipage) and see what the community is saying.
2021-05-01 21:55:24 -04:00
2021-11-20 23:55:10 -05:00
If you encounter any issues while using this sample, [create a new issue](https://github.com/pnp/sp-dev-fx-webparts/issues/new?assignees=&labels=Needs%3A+Triage+%3Amag%3A%2Ctype%3Abug-suspected%2Csample%3A%20angular-multipage&template=bug-report.yml&sample=angular-multipage&authors=@waldekmastykarz&title=angular-multipage%20-%20).
2021-04-26 02:08:59 -04:00
2021-11-20 23:55:10 -05:00
For questions regarding this sample, [create a new question](https://github.com/pnp/sp-dev-fx-webparts/issues/new?assignees=&labels=Needs%3A+Triage+%3Amag%3A%2Ctype%3Aquestion%2Csample%3A%20angular-multipage&template=question.yml&sample=angular-multipage&authors=@waldekmastykarz&title=angular-multipage%20-%20).
2021-04-26 02:08:59 -04:00
2021-11-20 23:55:10 -05:00
Finally, if you have an idea for improvement, [make a suggestion](https://github.com/pnp/sp-dev-fx-webparts/issues/new?assignees=&labels=Needs%3A+Triage+%3Amag%3A%2Ctype%3Aenhancement%2Csample%3A%20angular-multipage&template=question.yml&sample=angular-multipage&authors=@waldekmastykarz&title=angular-multipage%20-%20).
2021-04-26 02:08:59 -04:00
2021-11-07 01:54:14 -05:00
2021-11-07 01:41:41 -05:00
## 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.**
2021-11-07 01:54:14 -05:00
2021-12-20 10:25:30 -05:00
<img src="https://pnptelemetry.azurewebsites.net/sp-dev-fx-webparts/samples/angular-multipage" />