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 中注册组件很简单:

 

posted @ 2020-04-26 13:32  jane_panyiyun  阅读(648)  评论(0编辑  收藏  举报