https://uportal-project.github.io/uPortal-web-components/fr/components/waffle-menu/demo
# cloner le référentiel si vous ne l'avez pas déjà fait
git clone https://github.com/uPortal-contrib/uPortal-web-components
# naviguer jusqu'au dossier du menu waffle
cd uPortal-web-components/@uportal/waffle-menu
# installer
npm install
# démarrer l'application
npm start
Plutôt simple :
npm run build
Ceci compilera votre JavaScript dans build/static/js/main.{buildnumbers}.js
Après la construction, récupérez les fichiers javascript compilés et placez-les sur votre page.
Vous pouvez maintenant placer <waffle-menu>
n’importe où sur votre page.
Puisque <waffle-menu-menu>
est un composant web, son utilisation est démontrée dans le fichier uPortal-web-components/@uportal/waffle-menu/public/index.html
.
Dans index.html
, vous verrez que <waffle-menu />
est codé en dur. Il y a du javascript sur la page pour aider à tester le composant. Une variable json
est assignée dans l’en-tête contenant un tableau d’objets comme données pour chacun des liens. Sous le composant, javascript est utilisé pour attribuer des attributs au composant lui-même.
Voici les tripes de ce fichier html:
<waffle-menu
debug="true"
button-color="red"
url="/proxy/uPortal/api/v4-3/dlm/portletRegistry.json?categoryId=local.21"
></waffle-menu>
Nous avons un /proxy/
en tête de l’attribut url
. Il s’agit d’une commodité pour les développeurs de pouvoir effectuer des requêtes à partir de votre instance locale de uPortal. Le proxy est configuré dans package.json
:
"proxy": {
"/proxy": {
"target": "http://localhost:8080",
"changeOrigin": true,
"pathRewrite": {
"^/proxy": "/"
}
}
},
<waffle-menu>
prend les attributs suivants:
oidc-url
<waffle-menu
oidc-url="https://example.com/uPortal/api/v5-1/userinfo"
></waffle-menu>
button-color
applique une couleur au bouton du menu waffle. Utile si vous voulez éviter de spécifier la couleur en CSS.
Si ce n’est pas le cas, button-color
est réglé par défaut sur #ffffffff
.
Exemple:
<waffle-menu button-color="#ffffff">
url
URL entièrement qualifiée pointant vers l’API où <waffle-menu>
peut trouver des données au format registre portlet.
Exemple:
<waffle-menu
url="/uPortal/api/v4-3/dlm/portletRegistry.json?categoryId=local.21"
></waffle-menu>
dépanner
Désactivez la connexion open id id pour le test.
Ne pas l’utilisez dans la production mais à des fins de test uniquement.
Exemple:
<waffle-menu debug="true"></waffle-menu>
La structure JSON des données est assez simple. C’est un tableau d’objets, et chaque objet contient 3 ou 4 propriétés.
Nom de la propriété | Description |
---|---|
type |
Soit box , soit footer . Indique au menu <waffle-menu> où afficher le lien. |
link |
L’url de l’élément de lien dans le menu. |
label |
L’étiquette à afficher pour le lien. |
image |
L’url d’une image à utiliser pour les liens box . |