zoukankan      html  css  js  c++  java
  • Vue.js文档---介绍

    Vue.js文档---介绍

    1. Vue.js是什么?

    • 用于构建用户界面的渐进式框架(渐进式JavaScript框架
    • 和其他大型框架的区别:自底层向上,逐层应用
    • 核心库只关注视图层,易上手,便于和第三方库和既有项目整合
    • 为复杂单页提供驱动(结合其他工具和支持类库)

    Vue和其他库/框架的区别:等文档学完,最后来总结理解

    视频要点:

    Vue.js优点:

    1. 体积小:压缩后33K

    2. 更要的运行效率:基于虚拟DOM

    (DOM操作属于预处理操作,预先通过JavaScript进行计算,把最终的DOM操作计算出来并优化的技术)

    3. 双向数据绑定:不用再去操作DOM对象,更多精力投入到业务逻辑上

    4. 生态丰富、学习成本低:

    市场上有大量成熟、稳定的基于vue.js的UI框架和常用组件(例如element UI),实现快读开发

    5. 对初学者友好,入门容易、学习资料多

    Vue.js对有前端开发来说:

    1. 使用场景广泛:web端,移动端,跨平台应用开发

    2. 招聘市场需求大、前景好

    2. 起步

    引入Vue

    1. 命令行工具CLI(官方CLI脚手架)

    2. 直接用<script>引入

    <!-- 引入Vue:命令行工具CLI(官方CLI脚手架), 直接用<script>引入 -->
        <!-- 开发环境版本,包含了有帮助的命令行警告 -->
        <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
        <!-- 生产环境版本,优化了大小和速度 -->
        <script src="https://cdn.jsdelivr.net/npm/vue"></script>

    console: 安装成功

    3. 声明式渲染

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

    文本插值

    console:

     绑定元素attibute:

        <div id="app-2">
            <span v-bind:title="message">
                鼠标悬停几秒查看此处动态绑定的提示信息!
            </span>
        </div>

    Vue实例

            var app2 = new Vue({
                el: "#app-2",
                data: {
                    message: '页面加载于' + new Date().toLocaleString()
                }
            })

    console:

    v-bind:title="message"

     "将这个元素节点的title attribute和Vue实例的message属性保持一致"

    如果你再次打开浏览器的 JavaScript 控制台,输入 app2.message = '新消息',就会再一次看到这个绑定了 title attribute 的 HTML 已经进行了更新

    4. 条件与循环

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

    console:

     继续在控制台输入 app3.seen = false,你会发现之前显示的消息消失了。

    我们不仅可以把数据绑定到DOM文本或attribute,还可以绑定到DOM结构

    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: '整个项目' }
                    ]
                }
            })

    console:

    在控制台里,输入 app4.todos.push({ text: '新项目' }),你会发现列表最后添加了一个新项目。

    5. 处理用户循环

    为了让用户和你的应用进行交互,我们可以用 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('')
                    }
                }
            })

    console:

    注意在 reverseMessage 方法中,我们更新了应用的状态,但没有触碰 DOM——所有的 DOM 操作都由 Vue 来处理,你编写的代码只需要关注逻辑层面即可。

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

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

    console:

    6. 组件化应用架构

    组件系统是Vue的另一个重要概念,允许我们使用小型、独立和通常可复用的组件构建大型应用

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

  • 相关阅读:
    第八章 多线程编程
    Linked List Cycle II
    Swap Nodes in Pairs
    Container With Most Water
    Best Time to Buy and Sell Stock III
    Best Time to Buy and Sell Stock II
    Linked List Cycle
    4Sum
    3Sum
    Integer to Roman
  • 原文地址:https://www.cnblogs.com/jane-panyiyun/p/12778943.html
Copyright © 2011-2022 走看看