
Research
Using Trusted Protocols Against You: Gmail as a C2 Mechanism
Socket uncovers malicious packages on PyPI using Gmail's SMTP protocol for command and control (C2) to exfiltrate data and execute commands.
vue-keyboard-virtual-next
Advanced tools
keyBoard base on Vue3 , support hand write.
Other versions
For Vue 2.x, Please to using keyboard-virtual-vue.
For React, Please to using virtual-keyboard-react.
They have the same function as the Vue3 version
![]() | ![]() | ![]() | ![]() | ![]() |
---|---|---|---|---|
Edge | last 2 versions | last 2 versions | last 2 versions | last 2 versions |
$ npm install vue-keyboard-virtual-next --save
$ yarn add vue-keyboard-virtual-next --save
如果你的网络环境不佳,推荐使用 cnpm。
import App from "./app.vue";
import { createApp } from "vue";
import "vue-keyboard-virtual-next/keyboard.min.css";
import KeyBoard from "vue-keyboard-virtual-next";
createApp(App)
.use(keyBoard)
.mount("#app");
<template>
<!-- keyboard 只识别带有 data-mode 标识的输入框 -->
<input data-mode v-model="value" />
<KeyBoard />
</template>
<script lang="ts">
import "keyboard-virtual-vue/keyboard.min.css";
import KeyBoard from "keyboard-virtual-vue";
import { defineComponent, ref } from "vue";
export default defineComponent({
components: { KeyBoard },
setup() {
const value = ref<string>("你好");
return {
value,
};
},
});
</script>
属性 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
data-mode | 弹出输入法的类型:en 英文小写number 数字symbol 标点handwrite 手写不传 默认中文 | String | en number symbol handwrite | default as * |
data-prop | 注册的输入框的类型 | String | * |
参数 | 说明 | 默认值 | 类型 | 是否必须 | 版本 |
---|---|---|---|---|---|
v-model | 绑定的输入框value,可同时双向绑定多个输入框,不传则只与当前focus输入框做数据绑定关系 | string|number | 否 | v1.0.0+ | |
color | 主题色 | #eaa050 | string | 否 | v1.0.0+ |
modeList | 键盘渲染模式列表,若不传handApi则不会出现手写板 | ["handwrite", "symbol"] | string[] | 否 | v1.0.0+ |
blurHide | 是否当前输入框blur事件触发隐藏 | true | boolean | 否 | v1.0.0+ |
showHandleBar | 是否显示拖拽句柄 | true | boolean | 否 | v1.0.0+ |
dargHandleText | 拖拽句柄提示文字 | string | 否 | v1.0.0+ | |
modal | 是否显示遮罩层 | false | boolean | 否 | v1.0.0+ |
closeOnClickModal | 是否点击遮罩层隐藏键盘 | true | boolean | 否 | v1.0.0+ |
handApi | 手写识别接口,若不传则无法切换手写模块 | string | 否 | v1.0.0+ | |
animateClass | 键盘显隐动画,内置slide动画,如若需要其他动画,可传入相应类名自定义动画 | string | 否 | v1.0.0+ |
参数 | 说明 | 类型 | 版本 |
---|---|---|---|
keyChange | 按键触发事件,第一个参数为当前触发的按键的标识,第二个参数为当前聚焦输入框的props值,若没有则直接返回当前聚焦的input元素(v1.0.1版本之后) | (value: string,prop:string|HTMLInputElement) => void | v1.0.0+ |
change | value改变事件,第一个参数为当前最新通过键盘输入的值,第二个参数为当前聚焦输入框的props值,若没有则直接返回当前聚焦的input元素(v1.0.1版本之后) | (value: string,prop:string|HTMLInputElement) => void | v1.0.0+ |
closed | 键盘关闭事件 | () => void | v1.0.0+ |
modalClick | 遮罩点击事件 | () => void | v1.0.0+ |
方法名 | 说明 | 类型 | 版本 |
---|---|---|---|
reSignUp | 重新给input注册绑定键盘,当页面有新的input标签出现时调用此方法 | ()=> void | v1.0.0+ |
getCurrentInput | 获取当前聚焦的输入框 | ()=> HTMLInputElement | HTMLTextAreaElement | v1.0.2+ |
<template>
<!-- keyboard 只识别带有 data-mode 标识的输入框 -->
<input data-mode v-model="value" />
<KeyBoard ref="keyBoardRef"/>
</template>
<script lang="ts">
import "vue-keyboard-virtual-next/keyboard.min.css";
import KeyBoard from "vue-keyboard-virtual-next";
import { defineComponent, ref, onMounted } from "vue";
export default defineComponent({
components: { KeyBoard },
setup() {
const value = ref<string>("你好");
const keyBoardRef = ref<typeof KeyBoard | null>(null);
onMounted(() => {
// xxxx逻辑 给键盘重新注册输入框
keyBoardRef.value?.reSignUp();
})
return {
value,
keyBoardRef
};
},
});
</script>
release
版本代码vue3
版本引入FAQs
Unknown package
The npm package vue-keyboard-virtual-next receives a total of 5 weekly downloads. As such, vue-keyboard-virtual-next popularity was classified as not popular.
We found that vue-keyboard-virtual-next demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Socket uncovers malicious packages on PyPI using Gmail's SMTP protocol for command and control (C2) to exfiltrate data and execute commands.
Product
We redesigned Socket's first logged-in page to display rich and insightful visualizations about your repositories protected against supply chain threats.
Product
Automatically fix and test dependency updates with socket fix—a new CLI tool that turns CVE alerts into safe, automated upgrades.