脚手架(@vue/cli)创建项目启动服务

1、创建项目
  1. vue create 项目名字
2、启动项目

进入项目根目录,运行以下命令

  1. yarn serve
3、脚手架目录代码分析
  1. ├── node_modules # 项目依赖的第三方包
  2. ├── public # 静态文件目录
  3. ├── favicon.ico# 浏览器小图标
  4. └── index.html # 单页面的html文件(网页浏览的是它)
  5. ├── src # 业务文件夹
  6. ├── assets # 静态资源
  7. └── logo.png # vue的logo图片
  8. ├── components # 组件目录
  9. └── HelloWorld.vue # 欢迎页面vue代码文件
  10. ├── App.vue # 整个应用的根组件
  11. └── main.js # 入口js文件
  12. ├── .gitignore # git提交忽略配置
  13. ├── babel.config.js # babel配置
  14. ├── package.json # 依赖包列表
  15. |—— vue.config.js # 覆盖 webpack 的配置,文件自己添加
  16. ├── README.md # 项目说明
  17. └── yarn.lock # 项目包版本锁定和缓存地址
4、主要文件及含义
  1. node_modules下都是下载的第三方包
  2. public/index.html 浏览器运行的网页
  3. src/main.js webpack打包的入口文件
  4. src/App.vue vue项目入口页面
  5. package.json 依赖包列表文件
  6. vue.config.js # 覆盖 webpack 的配置,文件自己添加
5、脚手架自定义配置
  • src 并列新建 vue.config.js
  1. /* 覆盖webpack的配置 */
  2. module.exports = {
  3. devServer: { // 自定义服务配置
  4. open: true, // 自动打开浏览器
  5. port: 3000
  6. }
  7. }
6、关闭代码检查工具
  1. module.exports = {
  2. // ...其他配置
  3. lintOnSave: false
  4. }
7、打包压缩配置
  1. module.exports = {
  2. // ...其他配置
  3. mode: 'development' // 开发环境, 不压缩, 不混淆 打包速度非常快,不设置默认压缩
  4. }

Vue 指令

1、插值表达式

语法:{{ 表达式 }}

  1. <h1>{{ msg }}</h1>
2. v-bind 属性动态赋值

语法:v-bind: 属性名 = '变量'

简写::属性名 = 'vue 变量'

  1. <!-- vue指令-v-bind属性动态赋值 -->
  2. <a v-bind:href="url">我是a标签</a>
  3. <img :src="imgSrc">
3. v-on 事件指令

语法:v-on: 事件名 = '少量代码/函数/函数(实参)'

简写:@事件名 = '少量代码/函数/函数(实参)'

  1. <button v-on:click="count = count + 1">增加1</button>
  2. <button @click="addFn">增加1个</button>
  3. <button v-on:click="addCountFn(5)">一次加5件</button>
4、 v-on 事件对象

无传参:通过形参直接接收

有传参:通过固定值 $event 指代事件对象传给事件处理函数

  1. <a @click="two(10, $event)" href="http://www.baidu.com">阻止去百度</a>
  2. two(num, e){ // num = 10 ; e = 事件对象 a
  3. e.preventDefault()
  4. }
5、 v-on 修饰符

语法:@事件名.修饰符 = 'methods 里的函数'

  1. .stop - 阻止自身而引起事件冒泡
  2. .prevent - 阻止默认行为
  3. .once - 程序运行期间, 只触发一次事件处理函数
  4. .capture - 3div事件冒泡会3-2-1,如果给div2加上关键字顺序为2-3-1
  5. .self 忽略其他元素冒泡或者捕获事件,只局限于自身
  6. -------------------------------------
  7. <button @click.stop="btn">.stop阻止事件冒泡</button>
  8. <a href="http://www.baidu.com" @click.prevent="btn">.prevent阻止默认行为</a>
  9. <button @click.once="btn">.once程序运行期间, 只触发一次事件处理函数</button>
6、 v-on 按键修饰符·

语法:@keyup.按键名字 /按键数字编码

  1. <input type="text" @keydown.enter="enterFn"> // 按下了回车键
  2. 更多按键参考 [vue 官网](https://cn.vuejs.org/v2/guide/events.html#%E6%8C%89%E9%94%AE%E7%A0%81)
  3. ###### 7、系统修饰符
  4. 使用以下修饰符,对应按键处于按下状态才会触发鼠标或者键盘监听

修饰符:.ctrl .alt .shift .meta

  1. <button @click.shift='btnf'></button> // 只有当按下 shift 键才可以触发点击事件
8、v-model 表单指令

双向数据绑定:

数据变化 => 视图自动同步

视图变化 => 数据自动同步

演示:

  1. <input type="text" v-model="username" />
  2. <select v-model="from"> // 下拉框绑定在select上
  3. <option disabled value="">请选择</option> //disabled 禁用选项
  4. <option value="天津市">天津</option>
  5. </select>
  6. <input type="checkbox" v-model="hobby" value="抽烟">抽烟 //复选框变量 hobby 是数组
9、v-model 表单修饰符

.number 以 parseFloat 转成数字类型

.trim 去除首尾空白字符

.lazy 光标离开表单输送

演示:

  1. <input type="text" v-model.number="age">
10、v-text和v-html插值

注意:会覆盖插值表达式

语法:

v-text = 'vue 数据变量'

v-html = 'vue 数据变量'

  1. <p v-text="str"> <span>我是一个span标签</span> </p>
  2. <p v-html="str"> 我是一个span标签 </p>
  3. str: "<span>我是一个span标签</span>"
11、v-show 和 v-if 隐藏移除

语法:

v-show = 'vue 变量' //变量 true 为隐藏 false 为显示

v-if = 'vue 变量' //变量 true 为隐藏 false 为显示

原理:

v-show 用的是display:none 隐藏(频繁切换使用)

v-if 直接从 DOM 树上移除

高级:

v-else 使用

  1. <p v-if="age > 18">我成年了</p>
  2. <p v-else>还得多吃饭</p> // 显示
  3. age:15
12、v-for 循环指令

语法:

v-for = '(值,索引) in 目标结果'

v-for = '值 in 目标结构'

目标结构:

可以遍历数组、对象、数字、字符串、(可遍历结构)

演示:

  1. // 遍历数组 item 值,index 索引
  2. <li v-for="(item, index) in arr" :key="item">
  3. //遍历对象 value 值,key 属性名
  4. <div v-for="(value, key) in arr" :key="value">
  5. 遍历整数,假设 arr:5 ,那么{{i}} 12345
  6. <div v-for="i in arr" :key="i">{{ i }}</div>

**PS: **谁循环,v-for 语句写在谁身上

vue基本指令与脚手架基本配置的更多相关文章

  1. day 85 Vue学习之vue-cli脚手架下载安装及配置

      1. 先下载node.js,下载地址:https://nodejs.org/en/download/ 找个目录保存,解压下载的文件,然后配置环境变量,将下面的路径配置到环境变量中. 由于 Node ...

  2. Vue学习之vue-cli脚手架下载安装及配置

    Vue学习之vue-cli脚手架下载安装及配置:https://www.cnblogs.com/clschao/articles/10650862.html 1. 先下载node.js,下载地址:ht ...

  3. day 84 Vue学习之vue-cli脚手架下载安装及配置

    Vue学习之vue-cli脚手架下载安装及配置   1. 先下载node.js,下载地址:https://nodejs.org/en/download/ 找个目录保存,解压下载的文件,然后配置环境变量 ...

  4. day 83 Vue学习之五DIY脚手架、webpack使用、vue-cli的使用、element-ui

      Vue学习之五DIY脚手架.webpack使用.vue-cli的使用.element-ui   本节目录 一 vue获取原生DOM的方式 二 DIY脚手架 三 vue-cli脚手架的使用 四 we ...

  5. vue/cli 3.0脚手架搭建

    在vue 2.9.6中,搭建vue-cli脚手架的流程是这样的: 首先 全局安装vue-cli,在cmd中输入命令: npm install --global vue-cli  安装成功:  安装完成 ...

  6. Vue 框架-10-搭建脚手架 CLI

    Vue 框架-10-搭建脚手架 CLI + 批处理快捷启动 脚手架是通过 webpack 搭建的开发环境 使用 ES6 语法 打包和压缩 JS 为一个文件 项目文件在环境中,而不是浏览器 实现页面自动 ...

  7. Vue自定义指令实现按钮级权限控制功能

    思路: 登录:当用户填写完账号和密码后向服务端验证是否正确,验证通过之后,服务端会返回一个token,拿到token之后(我会将这个token存贮到sessionStorage中,保证刷新页面后能记住 ...

  8. 每个人都能实现的vue自定义指令

    前文 先来bb一堆废话哈哈.. 用vue做项目也有一年多了.除了用别人的插件之外.自己也没尝试去封装指令插件之类的东西来用. 刚好最近在项目中遇到一个问题.(快速点击按钮多次触发多次绑定的方法),于是 ...

  9. Vue自定义指令使用场景

    当你第一次接触vue的时候,一定会使用到其中的几个指令,比如:v-if.v-for.v-bind...这些都是vue为我们写好的,用起来相当的爽.如果有些场景不满足,需要我们自己去自定义,那要怎么办呢 ...

随机推荐

  1. 干货:详解C++ sort函数的cmp参数!

    学算法的第一天你在学冒泡.桶排 在你还没搞明白快排和归并的时候 你已经学到了数据结构最后的堆排序和希尔排序 可以说排序是很多竞赛生的噩梦-- 于是它诞生了 void std::sort() Sort ...

  2. Python - 头部解析

    背景 写 python 的时候,基本都要加两个头部注释,这到底有啥用呢? #!usr/bin/env python # -*- coding:utf-8 _*- print("hello-w ...

  3. stat 命令家族(4)- 详解 iostat

    性能测试必备的 Linux 命令系列,可以看下面链接的文章哦 https://www.cnblogs.com/poloyy/category/1819490.html 介绍 报告 CPU 信息和 I/ ...

  4. ABP 极简入门教程(二 MVC方式显示数据)

    增加显示菜单 Sample.Web.MVC项目中找到startup目录打开SampleNavigationProvider.cs,根据现有内容添加以下内容 .AddItem( new MenuItem ...

  5. CSS001. 纯CSS实现瀑布流(纵向排序)

    通过 Multi-columns 相关的属性 column-count.column-gap 配合 break-inside 来实现瀑布流布局. 首先对包裹图片的盒子增加样式,column-count ...

  6. 通过HttpURLConnection下载图片到本地--批量下载

    一.背景说明 这篇文章讲述的是批量下载附件,在上一篇文章中,介绍了下载单个附件(上一篇文章). 二.实现思路 主要的实现思路:创建文件夹->文件夹中创建需要下载的文件->压缩文件夹-> ...

  7. go语言游戏服务端开发(二)——网络通信

    一.网络层 网络游戏客户端除了全局登录使用http请求外,一般通过socket长连接与服务端保持连接.go语言的net包提供网络socket长连接相关操作. 对于服务端,一般经历 Listen.Acc ...

  8. C语言中的符号重载

    摘自<C专家编程>第二章37页                     C语言中符号的重载 符号 意义 static 在函数内部,表示该变量的值在各个调用间一直保持延续性在函数这一级,表示 ...

  9. CodeForce-799C Fountains (记忆化DP)

    Fountains CodeForces - 799C 某土豪想要造两座喷泉.现在有 n 个造喷泉的方案,我们已知每个方案的价格以及美观度.有两种合法的货币:金币和钻石.这两种货币之间不能以任何方式转 ...

  10. 【PHP数据结构】链表的其它形式

    在上篇文章中,我们已经说过了链表除了简单的那一种单向链表外,还有其它的几种形式.当然,这也是链表这种结构的一大特点,非常地灵活和方便.我们简单的想一想,如果让最后一个节点的 next 指回第一个节点, ...