VUE-day01-vue基础使用

1、什么是vue.js ?

        Vue.js是一套构建用户界面的渐进式框架。与其他轻量级框架不同的是,Vue 采用自底向上增量开发的设计。Vue 的核心库只关注视图层不仅易于上手,还便于与第三方库或既有项目整合。

        vue.js是前端的支流框架之一,和Angular.js、React.js一起,并成为前端三大主流框架

2、为什么学习流行框架?

        企业为了提高开发效率:在企业4E2D,时间就是效率,效率就是金钱;

        企业中,使用框架,能够提高开发的效率;

        提高开发效率的发展历程:原生JS -> Jquery之类的类库 -> 前端模板引擎 -> Angular.js / Vue.js

        能够帮助我们减少不必要的DOM操作;提高渲染效率;双向数据绑定的概念【通过框架提供的指令,我们前端程序员只需要关心数据的业务逻辑,不再关心DOM是如何渲染的了】

        在Vue中,一个核心的概念,就是让用户不再操作DOM元素,解放了用户的双手,让程序员可以更多的时间去关注业务逻辑

3、框架和库的区别

        框架:是一套完整的解决方案;对项目的侵入性较大,项目如果需要更换框架,则需要重新架构整个项目。

        库(插件):提供某一个小功能,对项目的侵入性较小,如果某个库无法完成某些需求,可以很容易切换到其它库实现需求。

  • 例如:从Jquery 切换到 Zepto(与jQuery差不多,但是是向上兼容的)

4、MVC与MVVM的区别

        MVC 是后端的分层开发概念;

        MVVM是前端视图层的概念,主要关注于视图层分离,也就是说:MVVM把前端的视图层,分为了三部分Model、View、VM ViewModel;

 

5、vue.js的代码结构

        引入vue.js

        写视图层(要展示的内容)

        实例化 Vue() 

                1、data:存放数据

                2、el:这个控制是哪块视图

                3、methods:方法

注意:写方法时要注意this的指向问题

6、插值表达式、v-cloak、v-text、v-html

        v-claok:可以解决页面闪烁的问题

示例:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>2-页面闪烁</title>
    <!-- <script src="./vue-2.4.0.js"></script> -->
    <style>
      [v-cloak] {
        display: none;
      }
    </style>
  </head>
  <body>
    <div id="app">
      <!-- <div>{
  {msg}}</div> -->
      <div v-cloak>{
  {msg}}</div>
    </div>
  </body>
  <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
  <script>
    let vm = new Vue({
      el: "#app",
      data: {
        msg: "页面会不会闪烁呢?",
      },
      methods: {},
    });
  </script>
</html>

        如何获取变量值呢?

                1、插值表达式  { { }} 可以在前后插入一些内容

                2、v-text:会覆盖标签里面的内容 不可以解析富文本

                3、v-html:会覆盖标签里面的内容 可以解析富文本

示例:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <!-- 1、引入 -->
    <script src="./vue-2.4.0.js"></script>
    <title>vue</title>
  </head>
  <body>
    <!-- 2、视图层 -->
    <div id="app">
      <!-- 插值表达式 {
  { }} -->
      {
  {msg}}---{
  {num + 8}}
      <button @click="log"> 点我 </button>


      <!-- v-html 会覆盖标签里面的内容 可以解析富文本 -->
      <!-- v-text 会覆盖标签里面的内容 不能解析富文本 -->
      <div v-html="html">11111</div>
      <div v-text="html">22222</div>
    </div>
    <div id="app2">
      {
  {msg}}
    </div>
  </body>
  <script>
    /* 
    vue:数据驱动视图
    a)	引入vue.js
    b)	写视图层,我们要展示的内容
    c)	实例化Vue()
          data:存放数据
          el:这个控制是哪块视图
          methods:放我们的方法

  */
    // 3、实例化Vue
    let vm = new Vue({
      // 控制区域 
      el: "#app",
      // 数据
      data: {
        msg: "hello world",
        num:5,
        html:'<h1 style="color:red;">我是h1</h1>',  // 带有标签和样式的字符串叫做富文本
      },
      // 方法
      methods: {
        log(){
          console.log(1);
        }
      },
    });
  </script>
</html>

 7、v-bind:界面元素属性值的绑定

        界面元素属性值的绑定

                1、括号里不加引号的都是我们data里的数据读取

                2、如果想使用字符串需要加上引号

                3、里面可以写表达式

                4、里面也可以调用定义好的方法,拿到的是方法的返回值

                5、简写       :

8、v-on:事件的绑定

                1、进行事件的绑定,我们用的最多的是click事件绑定

                2、简写 @

示例:属性绑定+事件绑定

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值