vue详解

前言:ssm由spring ,springmvc,mybatis组成

ssm:为框架集

jdk:java开发工具包

jvm:虚拟机,class文件

jre:java运行环境,在平台之上

jdk>jre>jvm

真正的网站组成:三大件,域名,网络通信,页面跳转,状态管理

jsp:动态网页开发技术

dom:文本对象模型(接口) 一系列功能的集合

SEO:搜索引擎优化

API:应用程序编程接口

1:vue:一套用于构建用户界面的渐进式框架

特点:只是关注视图层(前端三大件)(视图作用 用户看,刷新后台数据),实现模块化开发

2css预处理器,以编程的思想设计web页面,通过编译器不同的css,减少代码的冗余度

例如 SASS,LESS

3:javaScript框架,行为层,例如:jQuery,Angular ,React,vue,Axios:前端通信框架

4:ui框架(user Interface(用户界面)):框框:把一些特性直接封装起来,调用即可

例如:ElementUI AmazeUI

5:入门例子

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<!--导入vue 要放开头-->
<script src="https://cdn.bootcss.com/vue/2.6.10/vue.min.js"></script>
<!--view层 模板-->
<div id="app">
    {{message}}
</div>
<!--vue特性 v-什么:指令 bind:绑定 上面是{{绑定}}-->
<div id="hh">
    <span v-bind:title="message">
       标题悬浮
    </span>
</div>

<script>
    var vm=new Vue({//创建一个vue 名叫vm的对象
    el:"#app",//vue控制视图层,el(元素的意思)绑定标签app
        //model:数据 前后台双向绑定
        data:{
        message:"我是左杰"//放一个数据
        }
    });
    var vm=new Vue({//创建一个vue 名叫vm的对象
        el:"#hh",
        //model:数据 前后台双向绑定
        data:{
            message:"我是左杰"//放一个数据
        }
    });

</script>
</body>
</html>

步骤:①建立vue对象:在控制台起昨用

      ②双向绑定:

     ③输入数据

6:流程控制

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<!--导入vue 要放开头-->
<script src="https://cdn.bootcss.com/vue/2.6.10/vue.min.js"></script>
<!--view层 模板-->
<div id="app">
    <h1 v-if="ok">yes</h1>
    <h1 v-else>no</h1>
</div>

<script>
    var vm=new Vue({//创建一个vue 名叫vm的对象
    el:"#app",//vue控制视图层,el(元素的意思)绑定标签app
        data:{
        ok:true
        }
    });

</script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<!--//:普通行注释-->
<!--/**/:普通块注释 -->
<!--在此都为-->
<script src="https://cdn.bootcss.com/vue/2.6.10/vue.min.js"></script>
<div id="app">

</div>

<script>
    var vm=new Vue({
    el:"#app",
    data:{

    }
  });
<!--书写模板-->
</script>
</body>
</html>

1:选择与循环

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<script src="https://cdn.bootcss.com/vue/2.6.10/vue.min.js"></script>
<div id="app">
<h1 v-if="kind==='a'">yes</h1>
    <h3 v-else-if="kind==='b'">no</h3>
    <h2 v-else>no</h2>
<!--类似于选择结构了,
===表示全等于 值和类型都相等 所以===后面要表示出类型 ‘’
view model层内控制的是vm对象内的data里的参数
-->
</div>

<script>
    var vm=new Vue({
    el:"#app",
    data:{
    kind:'a'
    }
  });

</script>
</body>
</html>

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<script src="https://cdn.bootcss.com/vue/2.6.10/vue.min.js"></script>
<div id="app">
<h1 v-for="kind in kinds">
    {{kind.mes}}
</h1>
</div>

<script>
    var vm=new Vue({
    el:"#app",
    data:{
    kinds:[
    {mes:25},
    {mes:"yes"}
    ]
    }
  });
<!--for循环与数组相关
对象是谁是谁的对象
最后的数据一定要表示出数据类型
-->

</script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<!--导入vue 要放开头-->
<script src="https://cdn.bootcss.com/vue/2.6.10/vue.min.js"></script>
<!--view层 模板-->
<div id="app">
    下拉框:
    <select v-model="selected">
        <option>a</option>
        <option>b</option>
        <option>c</option>
    </select>
    结果为:
    <span>{{selected}}</span>
</div>

<script>
    var vm=new Vue({//创建一个vue 名叫vm的对象
    el:"#app",//vue控制视图层,el(元素的意思)绑定标签app
       data:{
        selected:'',//里面为默认值 ios端不能为空
       }

    });
//    v-model实现了视图绑定数据,v-model绑定了selected 然后我们在视图层给与赋值 同样如果在视图层用,即会改变

</script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<!--导入vue 要放开头-->
<script src="https://cdn.bootcss.com/vue/2.6.10/vue.min.js"></script>
<!--view层 模板-->
<div id="app">
<abs v-for="item in items" v-bind:qq="item"></abs>
<!--上有间接绑定 实现了自定义组件使用自定义数据-->
</div>

<script>
    Vue.component("abs",//自定义组件的名字,组件:html内的标签
        {
            props:["qq"],//自定义组件和Vue对象为同层,不可直接绑定,需要借助props定义一个变量来间接绑定 props内定义的变量不能为大写
          template:'<li>{{qq}}</li>'//组件的内容
        }
    );
    var vm=new Vue({//创建一个vue 名叫vm的对象
    el:"#app",
       data:{
         items:["王昭君","貂蝉","猫猫"],
       }

    });


</script>
</body>
</html>

2:网络通信

①vue具有生命周期

②.json是一个存储数据和配置文件 字符串

③网络通信:使用网络能够把多方链接在一起,然后可以进行数据传递,即一个网页引用另一个网页的数据

3:计算属性

:计算出来的结果,保存在属性中,内存中运行

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<script src="https://cdn.bootcss.com/vue/2.6.10/vue.min.js"></script>
<div id="app">
<p>随机时间 {{currentTime1()}}</p>
<!--此为调用currenTime1属性内的方法加()-->
<P>计算时间{{currentTime2}}</P>
<!--此为调用计算属性,使用的是属性名,结果为属性内的方法计算数据
探究其原因,是因为一开始就把属性的数据计算好放在了内存里,速度快 相当于缓存,节约系统开销
-->
</div>

<script>
    var vm=new Vue({//创建一个vue 名叫vm的对象
    el:"#app",
        data:{
        message:"hello,world"
        },
      methods:{//里面为方法
        currentTime1:function (){
            return Date.now();//返回一个时间戳
        }
      },
      computed: {//计算属性,methods,computed内方法名不能重名,如果重名只会调用methods内的方法
          currentTime2: function () {
              return Date.now();//返回一个时间戳
          }
      }

    });


</script>
</body>
</html>

4:内容分发

props:接收数据

data:里面放数据 实现动态

export:暴露接口

import:引入接口

有一些自定义组件,有一些自带的插件

import vue form 'Vue' 要导入 Vue之前的名字 vue导入进来后的名字

需要显示声明使用

如:Vue.use(vue);

style scoped:scoped的作用:该css只在当前组件生效

在导入当中有一个相对路径的问题

./当前目录

../当前目录的上一层目录

在Vue中这两者相互依存, router-link 对应 html 中的a 标签,但是与a 标签不同的是,跳转的时候并不会刷新页面,

router-view 相当于router-link的承载页面,用于展示router-link 的的内容(内部调用)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vue Router是Vue.js官方的路由管理器,用于构建单页面应用。它可以实现前端路由功能,将路径和组件进行映射,使得页面的路径改变时可以动态地切换组件显示。Vue Router的使用步骤如下: 1. 创建路由组件:首先需要创建一个或多个组件,用来作为路由的目标组件,即根据路径切换显示的组件。 2. 配置路由映射:在创建Vue实例之前,需要配置路由映射关系。通过定义一个路由表,将路径和组件进行映射,指定每个路径对应的组件。这可以通过创建一个路由实例,并传入一个包含路由配置的对象来实现。 3. 使用路由:在Vue实例中使用路由功能,主要有两个方面。一是使用`<router-link>`组件设置导航链接,该组件会根据指定的路径生成对应的链接,点击链接时会触发路由切换;二是使用`<router-view>`组件用来显示当前路径对应的组件内容,它会根据当前路径的变化动态地渲染不同的组件。 通过以上步骤,我们可以使用Vue Router来实现前端路由功能,使得用户在浏览器中的路径改变时,页面能够根据路径的变化来动态地切换显示不同的组件。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [vue-router 详解](https://blog.csdn.net/CSDNwei/article/details/130841098)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值