vue.js核心最基本的功能

Vue.js 的核心是一个允许采用简洁的模板语法来声明式地将数据渲染进 DOM 的系统:

<div id="app">  {{ message }}</div>
var app = new Vue({  el: ‘#app‘,  data: {    message: ‘Hello Vue!‘  }})
除了文本插值,我们还可以像这样来绑定元素特性:
<div id="app-2">  <span v-bind:title="message">    鼠标悬停几秒钟查看此处动态绑定的提示信息!  </span></div>
var app2 = new Vue({  el: ‘#app-2‘,  data: {    message: ‘页面加载于 ‘ + new Date().toLocaleString()  }})

控制切换一个元素是否显示也相当简单:

<div id="app-3">  <p v-if="seen">现在你看到我了</p></div>
var app3 = new Vue({  el: ‘#app-3‘,  data: {    seen: true  }})

还有其它很多指令,每个都有特殊的功能。例如,v-for 指令可以绑定数组的数据来渲染一个项目列表:

<div id="app-4">  <ol>    <li v-for="todo in todos">      {{ todo.text }}    </li>  </ol></div>
var app4 = new Vue({  el: ‘#app-4‘,  data: {    todos: [      { text: ‘学习 JavaScript‘ },      { text: ‘学习 Vue‘ },      { text: ‘整个牛项目‘ }    ]  }})

为了让用户和你的应用进行交互,我们可以用 v-on 指令添加一个事件监听器,通过它调用在 Vue 实例中定义的方法:

<div id="app-5">  <p>{{ message }}</p>  <button v-on:click="reverseMessage">逆转消息</button></div>
var app5 = new Vue({  el: ‘#app-5‘,  data: {    message: ‘Hello Vue.js!‘  },  methods: {    reverseMessage: function () {      this.message = this.message.split(‘‘).reverse().join(‘‘)    }  }})

Vue 还提供了 v-model 指令,它能轻松实现表单输入和应用状态之间的双向绑定。

<div id="app-6">  <p>{{ message }}</p>  <input v-model="message"></div>
var app6 = new Vue({  el: ‘#app-6‘,  data: {    message: ‘Hello Vue!‘  }})

组件系统是 Vue 的另一个重要概念,因为它是一种抽象,允许我们使用小型、独立和通常可复用的组件构建大型应用。仔细想想,几乎任意类型的应用界面都可以抽象为一个组件树:

在 Vue 里,一个组件本质上是一个拥有预定义选项的一个 Vue 实例。在 Vue 中注册组件很简单:

// 定义名为 todo-item 的新组件Vue.component(‘todo-item‘, {  template: ‘<li>这是个待办项</li>‘})

现在你可以用它构建另一个组件模板:

<ol>  <!-- 创建一个 todo-item 组件的实例 -->  <todo-item></todo-item></ol>

但是这样会为每个待办项渲染同样的文本,这看起来并不炫酷。我们应该能从父作用域将数据传到子组件才对。让我们来修改一下组件的定义,使之能够接受一个 prop

Vue.component(‘todo-item‘, {  // todo-item 组件现在接受一个  // "prop",类似于一个自定义特性。  // 这个 prop 名为 todo。  props: [‘todo‘],  template: ‘<li>{{ todo.text }}</li>‘})

现在,我们可以使用 v-bind 指令将待办项传到循环输出的每个组件中:

<div id="app-7">  <ol>    <!--      现在我们为每个 todo-item 提供 todo 对象      todo 对象是变量,即其内容可以是动态的。      我们也需要为每个组件提供一个“key”,稍后再      作详细解释。    -->    <todo-item v-for="item in groceryList" v-bind:todo="item" ></todo-item>  </ol></div>
Vue.component(‘todo-item‘, {  props: [‘todo‘],  template: ‘<li>{{ todo.text }}</li>‘})

var app7 = new Vue({  el: ‘#app-7‘,  data: {    groceryList: [      { id: 0, text: ‘蔬菜‘ },      { id: 1, text: ‘奶酪‘ },      { id: 2, text: ‘随便其它什么人吃的东西‘ }    ]  }})
  1. 蔬菜
  2. 奶酪
  3. 随便其它什么人吃的东西

原文地址:https://www.cnblogs.com/NatChen/p/9209427.html

时间: 2024-10-09 20:07:59

vue.js核心最基本的功能的相关文章

Vue学习系列(一)——初识Vue.js核心

前言 vue.js是一套构建用户界面的渐进式框架,vue.js的目标是通过尽可能简单的API实现响应的数据绑定和组合的视图组件. vue通过DOM事件操作和指令来进行视图层和模型层的相互通讯,会为每一处需要动态更新的DOM节点创建一个指令对象.每当一个指令对象观测的数据变化时,它便会对所绑定的目标节点执行相应的DOM操作.基于指令的数据绑定使得具体的DOM操作都被合理地封装在指令定义中,业务代码只需要涉及模板和对数据状态的操作即可,这使得应用的开发效率和可维护性都大大提升. 因此,数据绑定,组件

4 Vue.js 核心理念:数据驱动界面

1 2 3 4 5 6 原文地址:https://www.cnblogs.com/venicid/p/8166522.html

Vue.js 是什么

Vue.js(读音 /vju?/, 类似于 view) 是一套构建用户界面的 渐进式框架.与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计.Vue 的核心库只关注视图层,并且非常容易学习,非常容易与其它库或已有项目整合.另一方面,Vue 完全有能力驱动采用单文件组件和 Vue 生态系统支持的库开发的复杂单页应用. Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件. 如果你是有经验的前端开发者,想知道 Vue.js 与其它库/框架的区别,查看对比其它框

更轻更快的Vue.js 2.0与其他框架对比(转)

更轻更快的Vue.js 2.0 崭露头角的JavaScript框架Vue.js 2.0版本已经发布,在狂热的JavaScript世界里带来了让人耳目一新的变化. Vue创建者尤雨溪称,Vue 2.0 在性能上有显著的提升,同时保持轻量的文件下载: 渲染层基于一个轻量级的Virtual DOM实现进行了重写,该Virtual DOM实现fork自snabbdom.新的渲染层相比v1带来了巨大的性能提升,也让Vue 2.0成为了最快速的框架之一. 根据1.0到2.0迁移指南,“大约90%的API是相

js framework vue.js

vue.js 参考: http://cn.vuejs.org/guide/installation.html 不管使用何框架,首先都是要创建它的实例: var vue = new Vue({//参数 }) 知识点总结: 1.绑定: 使用 双“Mustache” 语法,如:{{}} 扩展知识: 使用三 Mustache,可以输出html,如:{{{}}} Mustache 标签也可以用在 HTML 特性 (Attributes) 内:div id="item-{{ id }}">&

Vue.JS 对比其他框架

Angular 选择 Vue 而不选择 Angular,有下面几个原因,当然不是对每个人都适合: 在 API 与设计两方面上 Vue.js 都比 Angular 简单得多,因此你可以快速地掌握它的全部特性并投入开发. Vue.js 是一个更加灵活开放的解决方案.它允许你以希望的方式组织应用程序,而不是任何时候都必须遵循 Angular 制定的规则.它仅仅是一个视图层,所以你可以将它嵌入一个现有页面而不一定要做成一个庞大的单页应用.在配合其他库方面它给了你更大的的空间,但相应,你也需要做更多的架构

vue.js的快速入门使用

1. vue.js的快速入门使用 1.1 vue.js库的下载 vue.js是目前前端web开发最流行的工具库,由尤雨溪在2014年2月发布的. 另外几个常见的工具库:react.js /angular.js 官方网站: ? 中文:https://cn.vuejs.org/ ? 英文:https://vuejs.org/ 官方文档:https://cn.vuejs.org/v2/guide/ vue.js目前有1.x.2.x和3.x 版本,我们学习2.x版本的. 1.2 vue.js库的基本使用

热烈庆祝《Vue.js 实战教程 V2.x(一)基础篇》上线了!

课程简介 课程地址:https://ke.qq.com/course/432961 机构名称:大华软件学院 授课讲师:大强老师 课程名称:Vue.js 实战教程 V2.x(一)基础篇 课程简介:包括前端发展史.Vue.js简介.第一个Vue.js程序.安装环境和Vue.Vue实例.模板语法.计算属性和侦听器.Class与Style绑定.条件渲染.列表渲染.事件处理.表单输入绑定.组件基础等等. 适合人群: 1.初出茅庐,想学习前端开发的同学: 2.没用过Vue.js,想学习更多框架的同学: 3.

Vue.js学习 Item12 – 内部响应式原理探究

深入响应式原理 大部分的基础内容我们已经讲到了,现在讲点底层内容.Vue.js 最显著的一个功能是响应系统 —— 模型只是普通对象,修改它则更新视图.这让状态管理非常简单且直观,不过理解它的原理也很重要,可以避免一些常见问题.下面我们开始深挖 Vue.js 响应系统的底层细节. 如何追踪变化 把一个普通对象传给 Vue 实例作为它的 data 选项,Vue.js 将遍历它的属性,用 Object.defineProperty 将它们转为 getter/setter.这是 ES5 特性,不能打补丁