3.0.1 • Published 5 years ago

we-plugin-menu v3.0.1

Weekly downloads
8
License
MIT
Repository
github
Last release
5 years ago

We.js menu and links plugin

Add menu features to your project

Dependency Status

Installation

we i we-plugin-menu

Menu class / prototype:

// first create one menu
var menu = new we.class.Menu({ 
  id: 'anOptionalId',
  class: 'your-menu-class',
  name: 'menuName',
  // access is check if menu is rendered with we-menu helper
  roles: ['authenticated'],
  // show this menu only for users with the permission:
  permission: 'can_do_something', // default: null
  // add active class in partent links if curent page?
  setParentLinkActiveClass: false // default false
});

// Then add links:
// 

// Add links for add multiple links
menu.addLinks([
  {
      id: 'edit',
      text: '<i class="fa fa-edit"></i> '+req.__('menu.user.edit'),
      href: '/user/'+res.locals.user.id+'/edit',
      class: null,
      weight: 4,
      name: 'menu.user.edit'
  },
  {
      id: 'create',
      text: '<i class="fa fa-edit"></i> '+req.__('menu.user.create'),
      href: '/user/'+res.locals.user.id+'/criate',
      class: null,
      weight: 5,
      name: 'menu.user.create'
  },  
);

// or add one linke
menu.addLink({
  id: 'edit',
  text: '<i class="fa fa-edit"></i> '+req.__('menu.user.edit'),
  href: '/user/'+res.locals.user.id+'/edit',
  class: null,
  weight: 4,
  name: 'menu.user.edit'
});

For render your menu use:

<!-- locals is res.locals object -->
{{we-menu menu locals=this}}

Hooks and events:

Hooks and events avaible in this plugin

EVENT we-plugin-menu:after:set:menu:class

This event run in we.js bootstrap after load all plugins

we.events.on('we-plugin-menu:after:set:menu:class', function (we){
  // your code here ...
});
HOOK we-plugin-menu:after:set:core:menus

This hook run in load context step of request/response

we.hooks.on('we-plugin-menu:after:set:core:menus', function (data, done){
  var req = data.req;
  var res = data.res;

  // your code here ...

  done();
});

How to install:

In one we.js project:

npm install we-plugin-menu --save

NPM Info:

NPM

License

Under the MIT license.

3.0.1

5 years ago

3.0.0

5 years ago

2.1.1

5 years ago

2.1.0

6 years ago

2.0.3

6 years ago

2.0.2

7 years ago

2.0.1

7 years ago

2.0.0

7 years ago

1.4.3

8 years ago

1.4.2

8 years ago

1.4.1

8 years ago

1.4.0

8 years ago

1.3.2

9 years ago

1.3.1

9 years ago

1.3.0

9 years ago

1.2.1

9 years ago

1.2.0

9 years ago

1.1.1

9 years ago

1.1.0

9 years ago

1.0.0

9 years ago

0.3.16

9 years ago

0.3.15

9 years ago

0.3.14

9 years ago

0.3.13

9 years ago

0.3.12

9 years ago

0.3.11

10 years ago

0.3.10

10 years ago

0.3.9

10 years ago

0.3.8

10 years ago

0.3.7

10 years ago

0.3.6

10 years ago

0.3.5

10 years ago

0.3.4

10 years ago

0.3.3

10 years ago

0.3.2

10 years ago

0.3.1

10 years ago

0.3.0

10 years ago

0.2.0

10 years ago

0.0.3

10 years ago

0.0.2

11 years ago

0.0.1

11 years ago