vue 基础使用方法

一、什么是Vue?

Vue.js(读音 /vjuː/, 类似于 view)是一个构建数据驱动的 web 界面的渐进式框架。Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件。

Vue.js借鉴了Angular以及React的一些核心思想,综合各自的长处进行了操作以及性能等方面的优化,进而打造出一款性能更优,学习更容易的MVVM框架。

它的作者是:尤雨溪

二、vue的基础语法

每个 Vue.js 应用都是通过构造函数 Vue 创建一个 Vue 的根实例 启动的

Var vm=new Vue({})

基础属性:

el:获取执行vue的dom元素-初始化范围

data : 存储数据

methods :执行的方法


1)绑定数据

{{}} 或者  v-text=“”      只能绑定纯文本

绑定html  angular中 ng-bind-html  vue中  v-html

表达式 在{{}}中  +-*/  直接可用  三木运算一样可用 


2)事件绑定

v-on:click=“”      或者    @click=“”

绑定事件  --事件中有event对象  函数参数为  $event

操作数据  通过this操作


3)其他指令

```

ref="a"  通过 this.$refs.a 拿到该元素

v-model 实时拿到input框的值 需要在data里初始化一下

v-for=“item in list” 循环  item循环到的数组值

v-for=“(item,key) in list”  key循环到的下标index

v-model=“”  表单元素value    不可直接{{}}获取,需在vue初始化设置一下

v-if 布尔值 为true 代表节点消失

V-if 与 v-else-if v-else 可以构成判断

V-show布尔值  为true  代表节点设置了display:none属性

无v-hide (不要任意猜测)

V-once 一次渲染

```

三、行间样式设置


```

v-bind:style=“{ color: activeColor, fontSize: fontSize + ‘px’ }”

data: {

            activeColor: 'red',

            fontSize: 30

        }

```

v-bind:style的对象语法十分直观——看着非常像 CSS,其实它是一个JavaScript对象

数组样式形式设置

```

v-bind:style=“[styleObjectA, styleObjectB]”

data: {

                styleObjectA: {

                    color: 'red'

                },

                styleObjectB: {

                    fontSize: '30px'

                }

            }

```

类名设置

```

1) v-bind:class=“{‘class-a’:isa,‘class-b’:isb}”

```

Isa isb 值为true 添加相应类名

为false 不添加类名对象形式设置

对象形式设置

```

classobj:{active:true,

'class-a':true,'

class-b':true}

```


绑定属性 v-bind:id=“data内的属性值” 或者 :id=“data内的属性值” 两种方法

(src  title  class  name等属性写法一样)


计算属性  放在computed:{//函数}  效率高  methods设置效率低

1.在模板中表达式非常便利,但是它们实际上只用于简单的操作。

2.模板是为了描述视图的结构。在模板中放入太多的逻辑会让模板过重且难以维护。这就是为什么 Vue.js 将绑定表达式限制为一个表达式。如果需要多于一个表达式的逻辑,应当使用计算属性。

在 Vue.js 中,你可以通过 computed 选项定义计算属性


监听

```

第一种写法vm.$watch(‘’,function( newvalue,oldvalue){ })

第二种写法 直接在vue初始化中通过

watch{msg:function(newvalue,oldvalue){}}

```

过滤器

```

Vue.filter(‘过滤器名字’,function(value){

return //具体操作

})

Vue2.0自定义过滤器,vue1.0提供内置

```

获取数据

1.  应用fetch或axios 获取数据  axios  是vue2.0

  插件网址  https://github.com/mzabriskie/axios

需要引入 axios。js

Eg:get方式

```

var _that=this;  /*注意this的作用域*/

          axios.get(url)

          .then(function (response) {

              console.log(response.data.result);

              _that.list=response.data.result;

          })

          .catch(function (error) {

              console.log(error);

          });

```

你可能感兴趣的:(vue 基础使用方法)