事件处理

基本骨架

子组件

axios

v-if

v-for

路由

设置style

计算属性

动态class

路由跳转

store

nextTick

事件处理:

直接写表达式:

  @click="counter += 1"

   调用方法:

   @click="greet"
@click="greet(index)" 
获取事件对象:
   @click="warn('no', $event)"
事件修饰符:
   @click.stop.prevent="doThat"
按键修饰符:
   @keyup.13="submit"

基本骨架:

<script type="text/ecmascript-6">
import axios from 'axios'
export default {
data(){
return {
useId:''
} },
created(){
..............
},
methods:{
loginReq(){
............
}
},
components: {
XInput
}
}
</script>

子组件:

 父组件:
    声明:import BpmRadio from '@/parts/radio'
    注册;
  使用:
<bpm-radio
:appoRadioOption="appoRadioOption" //传数据
@optionChange="optionChange" //子组件派发事件
> </bpm-radio> 子组件:
接收参数:

  props:{
        appoRadioOption:Array
     }, 
   //默认空数组:
      selectedIds:{
         type: Array,
         default: function () {
                 return []
         }
      },
 
    this.$emit('optionChange',this.appoRadioOption[index]) //派发事件并传参
  参数验证与默认:
    num: {
type: Number,
default: 100
},

axios-post请求:

 axios.post('xxxxxxxxxxx',{
userId:this.useId
}
).then((res)=>{
this.$vux.loading.hide()
if(res.data.state==0){ }else{
this.$vux.alert.show({
title:'提示',
content:res.data.message
})
}
}) 或者:
   axios({
      method:'POST',
      url:'xxxxxxxx',
      data:{
          queryKey:queryKey
      },
      headers:{
        "token": "1531798043804ORANMALLEELL"
      }
  }).then((res)=>{

axios-get请求:

 axios({
method:'Get',
url:'xxxxxxxxxx/oorder/getDtl?orderId='+orderId,
}).then((res)=>{

v-if:

<div class="btnBox" v-if="orderStateNum==2">
</div>
<div v-else>
 <divider>暂无留言</divider>
</div>
  <span v-if="optionVal=='IT类服务'">11111</span>
  <span v-else-if="optionVal=='行政办公类服务'">2222</span>

v-for:

遍历数组:

<div class="orItem" v-for="item in orderInfo" @click="clickItem(item.orderId)">
<div class="orItemHeader vux-1px-b">{{statusTag[item.orderState]}}
</div>
<div class="orItemBody vux-1px-b" v-for="proitem in item.orderList">
<div class="txtBox">
<p class="tit">2222222222</p>
<p>2222222222</p>
<p>2222222222</p>
</div>
</div>
</div> 带index:
   <li class="sliderItem" v-for="(item,index) in recomment">{{index}}.{{item.picUrl}}</li>

遍历对象:

 <li v-for="value in object">
{{ value }}
</li>

&获取键名:

   v-for="(value, key) in object"

&获取索引:

   v-for="(value, key, index) in object"

一定范围的取值:

   <span v-for="n in 10">{{ n }} </span>

&与v-if混合使用:

  <li v-for="todo in todos" v-if="!todo.isComplete">  //v-for优先级更高,v-if作用于每一个for循环
{{ todo }}
</li>

路由方法:

this.$router.push({path:`/order/`+orderId})
this.$router.push({name:'catalogDtl',params:{id:item.Fsinger_id},query:{keyworth:'123lxf'}})
this.$router.push({path:`/page20/${item.Fsinger_id}`})

行间:

@click=“$router.go(-1)”

 

使用计算属性:

动态class:

1. 对象内表达式:

 如下模板:
<div class="static" v-bind:class="{ active: isActive, 'text-danger': hasError }"></div>
如下 data:
data: { isActive: true, hasError: false}
渲染为:
<div class="static active"></div>

:class="{'active':index==serverType,'radioItem':true}"

2.返回字符串的表达式:

3.数组内表达式:

:class="[className, isMsg ? 'weui-icon_msg' : ' ']"

变量和字符串混合:

:class="[
     'el-link',
    type ? `el-link--${type}` : '',
    disabled && 'is-disabled'
]"
 设置style:
 
  对象语法:
 
       
  :style="{ color: activeColor, fontSize: fontSize + 'px' }"  //变量为data中的值
 
 

路由跳转:

声明式:<router-link :to="...">
编程式:router.push(...)
this.$router.push({path: '/coach/' + this.$route.params.id, query: queryData});

目标路由获取query:

      this.$route.query.id

store:

直接获取store:

 this.$store.state.wordId
async await:
   methods:{
async checkBatchOpRight(){
let res = await getLabelUsers('1001') //等一个resolve
...
}
}

  

Promise:
export function getLabelUsers (tagId) {
return new Promise((resolve, reject) => {
.........
resolve({
reqSuccess:true,
userList:res.data.userList
})
.........
})
}

变量与表达式:

为dom元素添加事件:

css中使用背景图片:

    background:url('../../assets/cjbg.png');
 

nextTick:
Vue.$nextTick(function(){
console.log(vm.$el.textContent)
}) watch:
watch:{
receiveForm: {
deep: true, //data中对象的值的变化
handler: function (newVal,oldVal){
this.modify()
}
}
}

  

 

vue常用片段的更多相关文章

  1. Vue常用经典开源项目汇总参考-海量

    Vue常用经典开源项目汇总参考-海量 Vue是什么? Vue.js(读音 /vjuː/, 类似于 view) 是一套构建用户界面的 渐进式框架.与其他重量级框架不同的是,Vue 采用自底向上增量开发的 ...

  2. vue常用

    vue常用的路由的状态管理

  3. 五、vue常用UI组件

    下面简单的总结下vue常用的一些UI 组件,有一些我也没怎么用过,这里先罗列出来,便于自己后面使用的时候查找方便,大家有更好的可以给我推荐哦~ vuex: vux github ui demo:htt ...

  4. (二)Vue常用7个属性

    学习vue我们必须之到它的7个属性,8个 方法,以及7个指令.787原则 el属性 用来指示vue编译器从什么地方开始解析 vue的语法,可以说是一个占位符. data属性 用来组织从view中抽象出 ...

  5. Vue常用语法及命令

    1,Vue常用语法 vue常用语法之变量的定义 // 1,变量相关 // 变量的提升 var username = "雪雪"; var username ; console.log ...

  6. Vue常用的GitHub项目

    Vue常用的GitHub项目(Demo案例) 应用实例 https://github.com/pagekit/pa... pagekit-轻量级的CMS建站系统 https://github.com/ ...

  7. vue常用的修饰符

    v-model修饰符 <template> <div id="demo14"> <p>-----------------模板语法之修饰符---- ...

  8. vue进阶:vs code添加vue代码片段

    如何设置? 选择或创建 配置代码 如何使用? 一.如何设置? 进入vs code主界面-->使用快捷键“ctrl + shift + p”: 如果你是使用Preferences:Configur ...

  9. Vue 常用三种传值方式

    Vue常用的三种传值方式: 父传子 子传父 非父子传值 引用官网一句话:父子组件的关系可以总结为 prop 向下传递,事件向上传递.父组件通过 prop 给子组件下发数据,子组件通过事件给父组件发送消 ...

随机推荐

  1. 计算多项式Poj(1996)

    题目链接:http://poj.org/problem?id=1996 思路: 刚开始打了个二维表,调了一个小时,爆内存了. #include <stdio.h> #include < ...

  2. 转:adb操作命令详解及大全

    说到 ADB 大家应该都不陌生,即 Android Debug Bridge,Android调试桥,身为 Android 开发的我们,熟练使用 ADB 命令将会大大提升我们的开发效率, ADB 的命令 ...

  3. php5.3 yum安装升级版本到 php5.6

    centOS系统下如何将php升级到5.6,之前通过yum来安装lamp环境,直接升级的话,提示没有更新包,也就是说默认情况下php5.3.3是最新   1.查看已经安装的php版本号 键入下面代码: ...

  4. Error:linker command failed with exit code 1 (use -v to see invocation) - iOS

    今天在操作 CoreData 时,创建完 Create NSManagedObject Subclass...  后,工程中会自动生成四个文件,如下图所示:   此时此刻便以工程,激动人心的时刻来临了 ...

  5. Webpack4 学习笔记二 CSS模块转换

    前言 此内容是个人学习笔记,以便日后翻阅.非教程,如有错误还请指出 webpack 打包css模块 webpack是js模块打包器, 如果在入口文件引入css文件或其它的less.sass等文件,需要 ...

  6. 关于var和ES6中的let,const的理解

    var的作用就不多说了,下面说说var的缺点: 1.var可以重复声明 var a = 1; var a = 5; console.log(a); //5 不会报错 在像这些这些严谨的语言来说,一般是 ...

  7. BZOJ1562: [NOI2009]变换序列(二分图 匈牙利)

    Description Input Output Sample Input 5 1 1 2 2 1 Sample Output 1 2 4 0 3 HINT 30%的数据中N≤50:60%的数据中N≤ ...

  8. Java高并发之同步异步

    1.概念理解: 2.同步的解决方案: 1).基于代码 synchronized 关键字 修饰普通方法:作用于当前实例加锁,进入同步代码前要获得当前实例的锁. 修饰静态方法:作用于当前类对象加锁,进入同 ...

  9. python获取Excel数据

    Python中一般使用xlrd(excel read)来读取Excel文件,使用xlwt(excel write)来生成Excel文件(可以控制Excel中单元格的格式),需要注意的是,用xlrd读取 ...

  10. 最小生成数kruskal算法和prim算法

    定义 连通图:在无向图中,若任意两个顶点vivi与vjvj都有路径相通,则称该无向图为连通图. 强连通图:在有向图中,若任意两个顶点vivi与vjvj都有路径相通,则称该有向图为强连通图. 连通网:在 ...