Giter VIP home page Giter VIP logo

spfx-pagenavigation's Introduction

Page Navigation Web Part

Summary

SharePoint Framework custom web part which provides page-level navigation with the links stored in a SharePoint list that is provisioned during app installation.

Page Navigation Overview Screenshot

Features

  • Up to 4 levels of hierarchical links. A link without a specified URL will function as a heading.
  • Navigation editor to add, edit, remove, reorder, promote, and demote links.
  • Data stored in a SharePoint list named Page Navigation which is provisioned on the site during app installation.
  • Edit button on the web part is security trimmed to users who have permission to edit items in the Page Navigation list.
  • 1:1 relationship between pages and list items in the Page Navigation list.
    • Links are stored as JSON in the NavigationData field.
    • Relationship between list item and page is established through the PageUrl field containing the server-relative path.
    • List item Title field is displayed in the web part as the primary heading.
    • One Page Navigation web part is allowed per page.

Used SharePoint Framework Version

version

Setup Instructions

Pre-requisites

  • App Catalog: Ensure the App Catalog is setup in your SharePoint Online tenant.

Tenant Installation

  1. Download the latest SPFx package file from releases or clone the repo and build the package yourself.
  2. Upload sppkg file to the 'Apps for SharePoint' library in your Tenant App Catalog.
  3. Click Deploy.

Site Installation

  1. Click 'Add an app' on your target site.
  2. Click on the Page Navigation app to install it.
  3. Navigate to a page on the site where you'd like to add the web part, click Edit to modify the page.
  4. Add the web part named Page Navigation to the desired section.
    Tip: Use a narrow column such as the vertical section.
  5. Save page.
  6. Within the web part, click Enable Page Navigation. This step will create the list item in the Page Navigation list that will store the links for the page.
  7. Click Edit next to the Page Navigation heading to begin adding links.
  8. Click Add Link to add your first link.
  9. Click Save on the web part when finished adding links.

Version history

Version Date Comments
1.1.0 April 26, 2021 Add support for headings
1.0.1 October 20, 2020 Minor bug fixes
1.0.0 October 7, 2020 Initial release

Disclaimer

Microsoft provides programming examples for illustration only, without warranty either expressed or implied, including, but not limited to, the implied warranties of merchantability and/or fitness for a particular purpose. We grant You a nonexclusive, royalty-free right to use and modify the Sample Code and to reproduce and distribute the object code form of the Sample Code, provided that You agree: (i) to not use Our name, logo, or trademarks to market Your software product in which the Sample Code is embedded; (ii) to include a valid copyright notice on Your software product in which the Sample Code is embedded; and (iii) to indemnify, hold harmless, and defend Us and Our suppliers from and against any claims or lawsuits, including attorneys' fees, that arise or result from the use or distribution of the Sample Code.

References

spfx-pagenavigation's People

Contributors

bschlintz avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

spfx-pagenavigation's Issues

Use same Page Navigation list on multiple pages across site

I guess this is more of a feature request. We've been desperate for a better navigation system in Sharepoint sites and were hoping this web part would do the trick, but it seems a unique Page Navigation list is generated for every page on the site. So if we want to use this as a Knowledgebase/Help/Documentation-style navigation for dozens of pages, we'd have to recreate the same list on every page (and edit every single page whenever there is a change).

If there were an option when adding the Page Navigation web part to point it at an existing list, instead of creating a unique one for every page, I feel like this would instantly be capable for use as a more global-style navigation. If made possible, support for multiple Page Navigation web parts would be nice as well, to allow for say, a global navigation list in a left column, and a page-level navigation list in a right column.

Perhaps there's already a way of accomplishing this that I am not finding, but just in case there isn't, figured I'd bring this up here.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.