本文整理汇总了TypeScript中mousetrap.bind函数的典型用法代码示例。如果您正苦于以下问题:TypeScript bind函数的具体用法?TypeScript bind怎么用?TypeScript bind使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了bind函数的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1:
export const bindKeys = (bindings: KeyBinding[]) => {
for (const binding of bindings) {
if (!binding.key.includes('digit')) {
Mousetrap.bind(binding.key, commands[binding.command]);
} else {
for (let i = 0; i <= 9; i++) {
Mousetrap.bind(
binding.key.replace('digit', i),
commands[binding.command],
);
}
}
}
};
示例2: BindShortcuts
export default function BindShortcuts({ onNewEndpoint, onSave, onDeploy }) {
Mousetrap.bind(["command+n", "ctrl+n"], function() {
onNewEndpoint();
return false;
});
Mousetrap.bind(["command+s", "ctrl+s"], function() {
onSave();
return false;
});
Mousetrap.bind(["command+d", "ctrl+d"], function() {
onDeploy();
return false;
});
}
示例3: Promise
return new Promise((resolve, reject) => {
mousetrap.bind(keySequence, (event, sequence) => {
resolve(new Input(InputType.Keyboard, sequence));
mousetrap.unbind(keySequence);
return false; // prevent the default behavior
});
});
示例4: sendMessage
document.addEventListener('DOMContentLoaded', (event) => {
const isSafari = (typeof safari !== 'undefined') && navigator.userAgent.indexOf(' Safari/') !== -1 &&
navigator.userAgent.indexOf('Chrome') === -1;
const isEdge = !isSafari && navigator.userAgent.indexOf(' Edge/') !== -1;
const isVivaldi = !isSafari && navigator.userAgent.indexOf(' Vivaldi/') !== -1;
if (!isSafari && !isEdge && !isVivaldi) {
return;
}
if (isSafari && (window as any).__bitwardenFrameId == null) {
(window as any).__bitwardenFrameId = Math.floor(Math.random() * Math.floor(99999999));
}
Mousetrap.prototype.stopCallback = () => {
return false;
};
const autofillCommand = isSafari || isEdge ? 'mod+\\' : 'mod+shift+l';
Mousetrap.bind(autofillCommand, () => {
sendMessage('autofill_login');
});
if (isSafari) {
Mousetrap.bind('mod+shift+y', () => {
sendMessage('open_popup');
});
} else if (!isEdge) {
Mousetrap.bind('mod+shift+9', () => {
sendMessage('generate_password');
});
}
function sendMessage(shortcut: string) {
const msg: any = {
command: 'keyboardShortcutTriggered',
shortcut: shortcut,
};
if (isSafari) {
msg.bitwardenFrameId = (window as any).__bitwardenFrameId;
safari.self.tab.dispatchMessage('bitwarden', msg);
} else {
chrome.runtime.sendMessage(msg);
}
}
});
示例5: bind
bind(keyArg, fn) {
Mousetrap.bind(keyArg, evt => {
evt.preventDefault();
evt.stopPropagation();
evt.returnValue = false;
return this.$rootScope.$apply(fn.bind(this));
});
}
示例6: enter
function enter() {
Mousetrap.bind('enter', (e) => {
const href = $('.song-list-el-focus a').attr('href') as string
const win = window.open(href, '_blank')
win.focus()
e.preventDefault()
})
}
示例7: values
values(instumentShortcuts.get()).forEach(shortcut => {
if (shortcut.keybinding) {
Mousetrap.bind(shortcut.keybinding, () => {
executeShortcut(shortcut);
return false;
});
}
});
示例8: subscribeActions
private subscribeActions() {
const o = this
for (const key in actions) {
Mousetrap.bind(key, function (action: any) {
action.triggerAction(o.song)
display(action.title, action.getCurrentState())
}.bind(this, actions[key]))
}
}
示例9:
commands.forEach(command => {
const commandSetting = _.find(
newSettings.Commands,
c => c.Name == command.Id
);
if (commandSetting) {
command.KeyBinding = commandSetting.KeyBinding;
command.ShowOnActionBar(commandSetting.ShowOnActionBar);
}
Mousetrap.bind(command.KeyBinding, command.ActionBinding);
});
示例10: end
function end() {
Mousetrap.bind('end', (e) => {
const list = $('.song-list')
const newEl = list.find('li:visible').last()
if (newEl.length > 0) {
list.find('.song-list-el-focus').removeClass('song-list-el-focus')
newEl.addClass('song-list-el-focus')
correctPosition()
}
e.preventDefault()
})
}