Vue脚手架 之 input自动获取焦点 全局设置自定义指令

import Vue from 'vue'
// 调用时直接在input或textarea标签上添加v-focus指令
Vue.directive('focus', {  //全局注册自定义指令
  inserted (el) {
    if (['INPUT', 'TEXTAREA'].indexOf(el.tagName) !== -1) {
      el.focus()
    } else {
      let node = el.querySelector('input')
      if (node) {
        node.focus()
        return
      }
      node = el.querySelector('textarea')
      if (node) {
        node.focus()
        return
      }
      throw new Error('请把v-focus指令用到input或textarea上')
    }
  }
})

直接放到main.js使用就可以

### 使用 Vue CLI 创建记事本应用 为了创建一个基于 Vue 的记事本应用程序,可以按照如下方式操作: #### 安装 Vue CLI 工具 确保已经全局安装了 `@vue/cli` 。如果没有安装,则可以通过 npm 来完成这一工作。 ```bash npm install -g @vue/cli ``` 此命令会下载并设置好最新版本的 Vue CLI 到系统的环境中[^1]。 #### 初始化新项目 使用更新后的指令来初始化一个新的 Vue 项目。对于 Windows 用户遇到上下键无法正常工作的状况,建议采用带有 `winpty` 命令的方式来启动创建过程: ```bash winpty vue.cmd create note-app ``` 这条命令将会引导用户通过交互界面选择所需的预设配置选项,比如是否要包含 TypeScript 支持、单元测试框架等特性[^4]。 #### 进入项目目录并运行开发服务器 一旦项目结构搭建完毕,进入刚建立好的文件夹内,并启动本地服务来进行初步验证: ```bash cd note-app npm run serve ``` 此时浏览器应自动打开页面展示默认生成的应用程序模板;如果未自动跳转,请手动访问 http://localhost:8080 地址查看效果[^2]。 #### 开发记事本核心功能 针对具体业务逻辑——即实现简单的笔记编辑保存等功能,可以在 src/components 文件夹下新建组件用于表示单篇日记条目或整个列表视图。同时利用 Vuex 状态管理模式管理数据状态变化,以及路由机制支持多页面导航需求。 例如定义一个名为 NoteEditor.vue 组件负责处理文本输入框内的内容增删改查动作: ```html <template> <div class="note-editor"> <!-- 文章标题 --> <input v-model="title"/> <!-- 正文区域 --> <textarea v-model="content"></textarea> <!-- 提交按钮 --> <button @click="saveNote">Save</button> </div> </template> <script> export default { data() { return { title: '', content: '' } }, methods: { saveNote(){ console.log('Title:', this.title); console.log('Content:', this.content); // 将数据提交给父级组件或其他地方... } } } </script> ``` 以上代码片段展示了如何构建基本表单控件并与 JavaScript 方法关联起来响应用户的交互行为。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值