Merge pull request #8 from lyweiwei/disable-menu-item

Disable menu item
This commit is contained in:
Jin Yucong 2017-04-23 19:59:48 -07:00 коммит произвёл GitHub
Родитель 8f7deeb86e b0a06a0fd6
Коммит dcf2e8120a
5 изменённых файлов: 14 добавлений и 9 удалений

Просмотреть файл

@ -42,6 +42,11 @@ window.toolbar = new ToolbarView({
text: 'The 2nd DropdownItem',
id: 'dropdown-item-2nd',
onClick: () => console.log('click dropdown-item-2nd'),
}, {
text: 'The 3rd DropdownItem',
id: 'dropdown-item-3rd',
disabled: true,
onClick: () => console.log('click dropdown-item-3rd'),
}, {
type: 'dropdown-divider',
}, {
@ -77,4 +82,3 @@ window.toolbar = new ToolbarView({
},
}],
}).render();

Просмотреть файл

@ -6,20 +6,25 @@ export function renderDropdownItem(dropdownItem) {
classes: [],
id: _.uniqueId('dropdown-item-'),
text: '',
disabled: false,
iconLeft: null,
iconRight: null,
tabindex: -1,
onClick: null,
}, dropdownItem);
if (options.disabled) {
options.classes = _.union(options.classes, ['disabled']);
}
const html = dropdownItemTemplate(options);
const events = {};
const { id, onClick } = options;
if (_.isFunction(onClick)) {
if (_.isFunction(onClick) && !options.disabled) {
events[`click .dropdown-item#${id}`] = onClick;
}
return { html, events };
}

Просмотреть файл

@ -1,4 +1,3 @@
import $ from 'jquery';
import _ from 'underscore';
import dropdownSubmenuTemplate from './dropdown-submenu.jade';
import './dropdown-submenu.less';
@ -42,10 +41,9 @@ export function renderDropdownSubmenu(dropdownSubmenu, renderItem) {
this.$(`#${options.menu.id}`).show();
};
events[`mouseover ul:has(> ${selector}) > li:not(${selector})`] = function (e) {
events[`mouseover ul:has(> ${selector}) > li:not(${selector})`] = function () {
this.$(`#${options.menu.id}`).hide();
};
return { html, events };
}

Просмотреть файл

@ -56,7 +56,6 @@ export class ToolbarView extends Backbone.View {
toolbarId = _.uniqueId('toolbar-'),
classes = [],
items = [],
events = {},
}) {
this._root = { type: 'toolbar', id: toolbarId, classes, items };
this._contexts = renderItemTree(this._root);
@ -171,4 +170,3 @@ export class ToolbarView extends Backbone.View {
return this;
}
}

Просмотреть файл

@ -1,6 +1,6 @@
{
"main": "dist/backbone-toolbar.js",
"version": "0.1.0",
"version": "0.1.1",
"files": [
"dist"
],