Vue.js是一套构建用户界面的渐进式框架。采用自底向上增量开发的设计。Vue的核心值关注视图层非常容易与其他库和已有的项目整合。另外,Vue完全有能力驱动采用单文件组件和Vue生态系统支持的库开发复杂的单页应用。

Vue.js的目标是通过尽可能简单地API实现响应式数据绑定和组合的视图组件。

声明式渲染

vue的核心是允许你使用简单地模板语法来声明式的将数据渲染进DOM的系统   demo:

<div id="app">

<div>{{msg1}}</div>

</div>
var app=new Vue(function(){
    el:"#app",
    data:{
      msg1:"this is my first vueMsg",
      items:[1,2,3,4,5,6,7,8,9,10],
      methods:{
        veverseMessage:function(){
          this.msg1=this.msg1.split("").reverse().join(" ")
        }
      }
    }
  })

除了绑定插入的文本内容,我们还可以采用这样的额方法绑定DOM元素的属性:

在id 为app的DOM元素中添加

<div v-bind:title="msg1">hove your mouse for a few seconds to see the bound title!</div>

v-bind:title="msg1"

这个指令的简单含义就是:将这个元素节点的title属性和Vue实例的msg1属性绑定在一起

条件与循环

<ul>
  <li v-for="item in items">{{item}}</li>
</ul>

处理用户输入

为了让用户和你的应用进行互动,我们可以使用v-on指令绑定一个监听事件用于调用我们Vue实例中定义的方法

<button v-on:click="veverseMessage()"></button>

vue页提供了v-model指令,它使得在表单输入和应用状态中做双向数据绑定变得非常轻巧

<input type='text" v-model="msg1">
<div>{{msg1}}</div>

用组件构建应用

组件系统是Vue的另外一个重要的概念,因为它提供了一种抽象,让我们用独立可复用的小组件构建大型应用。如果我们考虑到这点,几乎任意类型的

应用的界面都可以抽象为一个组件树:

在Vue里,一个组件实质上是一个个拥有预定义选项的一个Vue实例:

Vue.component("item-todo",{

template:"<div>this is my first vue component template</div>"

})

现在我们可以在另一个组件模板中写入它:

<item-todo></item-todo>

但是这样会为每一个item-todo渲染同样的文本,我们应该将数据从父作用域传到子组件,让我们来修改一下组件的定义,使得它能够接受一个prop字段:

这样我们就可以使用v-bind指令将todo传到每一个重复的组件中

<ul>
  <item3 v-for="item in itms" v-bind:todo="item"></item3>
</ul>

子元素通过props接口实现了与父元素很好的解耦。我们现在可以在不影响父应用的基础上,进一步为我们的todo组件改进更多复杂的模板和逻辑。

与自定义元素之间的关系

你可能已经注意到Vue.js组件类似于自定义元素-----它是web组件规范的一部分。实际上Vue.js的组件语法参考了该规范,不同:

1 web组件规范仍然远未完成,并且没有浏览器实现。相比之下,Vue.js的组件不需要任何补丁,并且在所有的浏览器中(ie9以及更高版本)之下表现一致,必要时,Vue.js组件也可以放在原生自定义元素之内。

2 Vue.js组件提供了原生自定义元素所不具备的一些重要功能。比如组件间的数据流,自定义事件系统,以及动态的、带特效的组件替换。

来自:http://cn.vuejs.org/v2/guide/class-and-style.html

vue 简介的更多相关文章

  1. vue简介、入门、模板语法

    在菜鸟教程上面学习的vue.js.同时结合vue中文文档网站,便于自己记录. vueAPI网站:API 1. 简介 Vue.js(读音 /vjuː/, 类似于 view) 是一套构建用户界面的渐进式框 ...

  2. 01 . Vue简介,原理,环境安装

    简介 vue是一个JavaMVVM库,是一套用于构建用户界面的渐进式框架,是初创项目的首选前端框架.它是以数据驱动和组件化的思想构建的,采用自底向上增量开发的设计.它是轻量级的,它有很多独立的功能或库 ...

  3. vue简介

    vue的介绍 vue官网说:Vue.js(读音 /vjuː/,类似于 view) 是一套构建用户界面的渐进式框架.与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计. vue的优点 1.易用 ...

  4. Vue简介以及基本使用

    Vue 是一套构建用户界面的渐进式 框架 框架和库? 框架(基于自身的特点向用户提供一套完整的解决方案,控制权在框架本身,需要使用者按照框架所规定的某种规范进行开发) Vue Angular Reac ...

  5. vue 简介 vue 项目 组件

    1. 概念 Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架.能够为复杂的单页应用提供驱动. 2. 用法 2.1 声明式渲染 2.1.1 改变文本     {{ m ...

  6. vue简介,插值表达式,过滤器

    目录 VUE框架介绍 what?什么是vue? why?为什么要学习vue? special特点? how如何使用? 下载安装? 导入方式? 挂在点el 插值表达式 delimiters自定义插值表达 ...

  7. Vue简介与基础

    一.什么是Vue.js Vue.js 是目前最火的一个前端框架,React是最流行的一个前端框架(React除了开发网站,还可以开发手机App, Vue语法也是可以用于进行手机App开发的,需要借助于 ...

  8. Vue简介-MVVM是什么?

    Vue.js - Day1 课程介绍 前5天: 都在学习Vue基本的语法和概念:打包工具 Webpack , Gulp 后5天: 以项目驱动教学: 什么是Vue.js Vue.js 是目前最火的一个前 ...

  9. Vue --- 基础简介

    目录 Vue简介 1.什么是Vue 2.为什么要学习Vue 3.special -- 特点 4.如何使用vue Vue使用 1.如何使用vue 2.插值表达式 3.文本指令 4.事件指令 5.属性指令 ...

随机推荐

  1. Spring Boot 2 (二):Spring Boot 2 尝鲜-动态 Banner

    Spring Boot 2.0 提供了很多新特性,其中就有一个小彩蛋:动态 Banner,今天我们就先拿这个来尝尝鲜. 配置依赖 使用 Spring Boot 2.0 首先需要将项目依赖包替换为刚刚发 ...

  2. 牛客网NOIP赛前集训营 第6场 T1 最长路

    [题解] 先建反向图,然后跑拓扑排序求出最长路. 将所有的点按照最长路从小到大分层,把上一层连向这一层的边按照边权为第一关键字.起点的排名为第二关键字排序. 按照这个顺序更新这一层的答案,按照这一层每 ...

  3. POJ1013称硬币【枚举】

    Counterfeit Dollar Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 52474   Accepted: 16 ...

  4. PS一些技巧

    色阶的解决办法 我们做效果图的时候经常会使用大面积渐变,时常会出现比较严重的色阶问题,通常出现这些明显色阶的时候,可以通过使用高斯模糊对色阶进行模糊化处理. 在使用PS CC的过程中,笔者经常遇到假死 ...

  5. mongodb shell 无法删除问题

    1.MongoDB Shell中退格键使用的问题. 利用SecureCRT工具访问linux的时候,在使用MongoDB的交互式shell的时候,退格键(Backspace)无法使用,导致无 法修改输 ...

  6. restful(3):认证、权限、频率 & 解析器、路由控制、分页、渲染器、版本

    models.py中: class UserInfo(models.Model): name = models.CharField(max_length=32) psw = models.CharFi ...

  7. 【周期性执行事件】MySQL事件(Event)&任务调度

    1.事件简介 事件(event)是MySQL在相应的时刻调用的过程式数据库对象.一个事件可调用一次,也可周期性的启动,它由一个特定的线程来管理的,也就是所谓的“事件调度器”. 事件和触发器类似,都是在 ...

  8. Nginx 的 server_names_hash_bucket_size 问题

    在 Nginx 0.6.35 的版本中,配置多个 server 虚拟主机,必须要在配置文档中 http { 里头加上 server_names_hash_bucket_size 64; 这么一句 ht ...

  9. fastcgi与cgi的区别[转载]

    cgi 在2000年或更早的时候用得比较多, 以前web服务器一般只处理静态的请求,如果碰到一个动态请求怎么办呢?web服务器会根据这次请求的内容,然后会fork一个新进程来运行外部c程序 (或per ...

  10. docker容器-快速部署Jenkins

    1.在本地虚拟机环境.安装CentOS 7,并安装docker容器 2.在docker容器中执行  docker pull jenkinsci/blueocean 3.查看已经下载的Jenkins镜像 ...