什么是 vue


本文摘自PHP中文网,作者藏色散人,侵删。

vue是Vue.js的简称,是一个用于创建用户界面的开源JavaScript框架,也是一个创建单页应用的Web应用框架;vue所关注的核心是MVC模式中的视图层,同时它也能方便地获取数据更新,并通过组件内部特定的方法实现视图与模型的交互。

本教程操作环境:windows7系统、vue2.0版,DELL G3电脑。

【相关文章推荐:vue.js】

Vue.js(/vju?/,或简称为Vue)是一个用于创建用户界面的开源JavaScript框架,也是一个创建单页应用的Web应用框架。

Vue.js是一款流行的JavaScript前端框架,旨在更好地组织与简化Web开发。Vue所关注的核心是MVC模式中的视图层,同时,它也能方便地获取数据更新,并通过组件内部特定的方法实现视图与模型的交互。

特性

组件

组件是Vue最为强大的特性之一。为了更好地管理一个大型的应用程序,往往需要将应用切割为小而独立、具有复用性的组件。在Vue中,组件是基础HTML元素的拓展,可方便地自定义其数据与行为。下方的代码是Vue组件的一个示例,渲染为一个能计算鼠标点击次数的按钮。

1

2

3

4

5

6

7

8

9

// 定义一个名为 button-counter 的新组件

Vue.component('button-counter', {

  data: function () {

    return {

      count: 0

    }

  },

  template: '<button v-on:click="count++">You clicked me {{ count }} times.</button>'

})

模板

Vue使用基于HTML的模板语法,允许开发者将DOM元素与底层Vue实例中的数据相绑定。所有Vue的模板都是合法的HTML,所以能被遵循规范的浏览器和HTML解析器解析。在底层的实现上,Vue将模板编译成虚拟DOM渲染函数。结合响应式系统,在应用状态改变时,Vue能够智能地计算出重新渲染组件的最小代价并应用到DOM操作上。[12]

此外,Vue允许开发者直接使用JSX语言作为组件的渲染函数,以代替模板语法。[13]以下为可计算点击次数的按钮的JSX渲染版本(需配置相应Babel处理器):

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

Vue.component('buttonclicked', {

  props: ["initial_count"],

  data: function() {var q = {"count": 0}; return q;} ,

  render: function (h) {

    return (<button vOn:click={this.onclick}>Clicked {this.count} times</button>)

  },

  methods: {

    "onclick": function() {

      this.count = this.count + 1;

    }

  },

  mounted: function() {

    this.count = this.initial_count;

  }

});

响应式设计

响应式是指MVC模型中的视图随着模型变化而变化。在Vue中,开发者只需将视图与对应的模型进行绑定,Vue便能自动观测模型的变动,并重绘视图。这一特性使得Vue的状态管理变得相当简单直观。

过渡效果

Vue在插入、更新或者移除DOM时,提供多种不同方式的应用过渡效果。包括以下工具:

  • 在CSS过渡和动画中自动应用class

  • 可以配合使用第三方CSS动画库,如Animate.css

  • 在过渡钩子函数中使用JavaScript直接操作DOM

  • 可以配合使用第三方JavaScript动画库,如Velocity.js

单文件组件

为了更好地适应复杂的项目,Vue支持以.vue为扩展名的文件来定义一个完整组件,用以替代使用Vue.component注册组件的方式。开发者可以使用 Webpack或Browserify等构建工具来打包单文件组件。

核心插件

1

2

3

4

5

vue-router

vuex

vue-loader

vueify?

vue-cli

以上就是什么是 vue的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

bootstrap与vue区别

vue子组件怎么向父组件传值

.vue文件里怎么写scss?

vue中递归组件的实现方法介绍(附实例:三级菜单)

javascript之ssm+vue前后端分离框架整合实现

为什么vue不使用ajax

click在vue里怎么实现

29道vue高频面试题(纯干货)

vue2.0子组件中怎么改变父组件中的值 ?

vuex中常用知识点(总结)

更多相关阅读请进入《vue》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...