简单创建一个Vue项目

什么是vue
Vue的核心理念
为什么要学习Vue流行框架
框架和库的区别
MVC和MVVM
Vue.js的代码结构
三种展示数据的方法
属性绑定v-bind和事件绑定v-on

什么是vue

要创建一个Vue项目首先要了解什么是Vue。

目前前端有三大主流框架:Vue.js,Angular.js,React.js

Vue是用于构建用户界面的js渐进式框架,采用自底向上逐层应用增量开发的设计

Vue的核心理念

Vue的核心理念是:数据驱动视图,组件式开发

为什么要学习Vue流行框架

1、Vue是一种轻量级框架:只关注图层,是一个构建数据的视图集合
2、简单易学:Vue由国人开发,中文文档,易于理解和学习
3、数据、视图、结构分离:使得数据的更改更加简单
4、不需要进行逻辑代码的修改,只需要操作数据就能完成相关操作
5、虚拟DOM:不在使用原生的DOM操作节点,极大的解放了DOM操作
6、运行速度更快:相比于React而言,view存在很大的优势

框架和库的区别

框架:
框架是一套完整的解决方案,对项目的侵入性较大,项目如果需要更换框架,则需要更新架构整个项目。
库:
库提供了某一个小功能,对项目的侵入性较小,如果某个库无法完成某些需求,可以很容易切换到其他库实现需求。

MVC和MVVM

MVC

Mvc是一种设计模式,表示"Model-View-controller",是后端的分层开发概念。

M是model层:用来处理数据,和数据库打交道

V是view层:用来展示数据,发送请求

C是调度层controller:用来接收数据,响应数据,返回数据

MVVM

MVVM 表示“Model-View-ViewModel”,是前端视图层的概念,主要关注于视图层分离
M是模型层model:用来处理逻辑关系。

V是视图层:用来展示数据。

VM是视图模型层view-model,用来连接view和model,承上启下的作用。

Vue.js的代码结构

1、引入Vue.js文件,可以通过线上链接引入,或者下载后本地引入

线上链接:
2、书写视图层
3、实例化Vue()

<html>
<head>
    <!-- 1. 引入vue.js -->
    <script src="https://cdn.jsdelivr.net/npm/vue@2.7.14/dist/vue.js"></script>
</head>
<body>
    <!-- 2. 书写视图层 -->
    <div id="app">
    </div>
</body>
<script>
    // 3. 实例化Vue()
    let vm = new Vue({
        el: "#app", // 控制区域
        data: { // 存放数据
            message: 'Hello Vue!' // 存放的数据
        },
        methods: { // 存放的方法
        }
    })
</script>

</html>

在这里插入图片描述

三种展示数据的方法

1、插值表达式{{}}

插值表达式可以展示内容,可以进行简单的运算

<html>

<head>
    <script src="https://cdn.jsdelivr.net/npm/vue@2.7.14/dist/vue.js"></script>
</head>

<body>
    <div id="app">
    	<!--展示数据-->
        {{message}}
        <!--进行简单的计算-->
        <p>页面中进行简单计算:18+2= {{age+2}}</p>
    </div>
</body>
<script>
    let vm = new Vue({
        el: "#app",
        data: {
            message: '这是使用插值表达式所展示的内容',
            age: 18
        },
        methods: {}
    })
</script>
</html>

2、v-text和v-html

v-text:类似于js中innerText,将覆盖元素中所有现有的内容,不能解析富文本
v-html:类似于js中innerHTML,内容按普通 HTML 插入,可以解析富文本

<html>

<head>
    <script src="https://cdn.jsdelivr.net/npm/vue@2.7.14/dist/vue.js"></script>
</head>

<body>
    <div id="app">
        <div v-text="message">被v-text覆盖掉的文字</div>
        <div v-text="content">被v-text覆盖掉的文字</div>
        <div v-html="message">被v-html覆盖掉的文字</div>
        <div v-html="content">被v-html覆盖掉的文字</div>
    </div>
</body>
<script>
    let vm = new Vue({
        el: "#app",
        data: {
            message: '要展示的内容',
            content: "<span>这是一段富文本</span>"
        },
        methods: {}
    })
</script>
</html>

在浏览器的展示效果如下
在这里插入图片描述

属性绑定v-bind和事件绑定v-on

v-bind

当元素的属性值要求为变量时,比如class属性、style属性、value属性、href属性等等,只要是属性,我们就可以使用v-bind来绑定。

v-bind:属性 简写: :属性

<html>
<head>
    <script src="https://cdn.jsdelivr.net/npm/vue@2.7.14/dist/vue.js"></script>
</head>
<body>
    <div id="app">
        <input type="text" v-bind:value="message">
        // 简写
        <input type="text" :value="message">
        <img v-bind:src="link" alt="" width="300">
        // 简写
        <img :src="link" alt="" width="300">
    </div>
</body>
<script>
    let vm = new Vue({
        el: "#app",
        data: {
            message: '输入框内展示的内容',
            link: 'https://lmg.jj20.com/up/allimg/1113/041620104229/200416104229-8-1200.jpg'
        },
        methods: {}
    })
</script>
</html>

浏览器显示效果
在这里插入图片描述

v-on

事件的绑定: v-on:事件类型 简写: @事件类型

<html>
<head>
    <script src="https://cdn.jsdelivr.net/npm/vue@2.7.14/dist/vue.js"></script>
</head>
<body>
    <div id="app">
        <button v-on:click="show">点击显示内容</button>
  			// 简写
        // <button @click="show">点击</button>
        <p v-text="message"></p>
    </div>
</body>
<script>
    let vm = new Vue({
        el: "#app",
        data: {
            message: ''
        },
        methods: {
            show() {
              // methods中拿到data中的数据 用this获取
                this.message = '点击按钮后页面中展示的文本内容'
            }
        }
    })
</script>
</html>

浏览器显示效果
在这里插入图片描述

更多的知识学习后更新

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值