一篇看完就把Vue.js融会贯通

Vue是一个专注于前端UI的框架。它的主要能力是:

  1. 声明式绑定。包括数据绑定、事件绑定
  2. 基于组件的编程。让开发者可以把整个应用分为若干组件,分而治之

本篇文字会讲解声明式绑定,并且会谈及Vue的引入、数据绑定、事件绑定、Vue实例、指令。特别的,同样的案例,我也用来讲解Vue最为引以为傲的组件技术。案例是一个微小的叫做counter的应用,看起来是这样的:

有一个标签显示数字0,当点击按钮“+”,数字会每次加1。代码如下。你可以直接保存代码到html文件中,然后用浏览器打开,如果是IE的话必须是IE8或者或以上版本:

 
 
  1.     {{count}}
  2.     +
  •  
  • 你可以实际的操作,看到按钮和数字的互动变化。然后我们来看Vue如何做到的。

    首先,必须引入Vue.js库。我们使用

  •   
  •  
  • 这一次,我们见到了新的内容:

    1. Vue的新属性template。它的值用来加载html模板代码。本案例中,就是放置本来在主HTML内的两个标签。需要注意的是,它们之外包括了一个div标签。因为Vue2.0版本要求作为模板的html必须是单根的。
    2. Vue的新属性components,用来注册一个局部组件。正是在此处,组件counter被注册,从而在html标签内可以直接使用来引用组件counter的。

    尽管这个案例太小了,还看不出太大的好处。但是这样的组件引入,让相关性强的html元素和对应的数据、代码内聚到了一起,这是符合软件工程原则的、因此是值得鼓励的行为。

    新组件完全可以分离到另外一个script文件内,从而达到不仅仅是逻辑上的代码和主html分离,也做到了物理上的分离。

    另外,使用template在代码内些html,还是比较烦人:

    1. 你得小心的在外层使用单引号,在内部使用双引号
    2. 混杂js和html观感不佳

    此时,可以使用的替代方法:

    1. render函数。实际上所有的template字符串本来在内部就被编译为render函数的
    2. 单文件组件技术
    3. 或者vue支持的JSX。

    当然,后两种方法就需要转译器和打包工具的配合。比如Babel和webpack的。这些内容,请搜索参考

    1. vue.js - advance - render 函数小抄
    2. vue.js的起步

    暂时不在讨论之列。

    标题名称:一篇看完就把Vue.js融会贯通
    本文网址:http://www.csdahua.cn/qtweb/news34/456884.html

    网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

    广告

    声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网

    成都快上网为您推荐相关内容

    ChatGPT知识

    分类信息网