vue 实现把路由单独分离出来


Posted in Javascript onAugust 13, 2020

建立一个 router.js 文件

引入

import Vue from 'vue'
import VueRouter from 'vue-router'
 
import Home from '../components/home/home.vue'

然后注册

Vue.use(VueRouter);
const router = new VueRouter({
 mode : 'history',
 base: __dirname,
  routes: [
  {
    path: historyUrl + '/',
    component: Home,
    name : '主页'
  },
]}

最后暴露出云

export default router

在main.js 里面直接引入然后就可以用了

import router from './main/router.js'
const app = new Vue({
 router : router,
 watch : {
  '$route' (to,from,next){
   //console.log(to) //路由监听
   //console.log(from)
  }
  },
 render : h => h(App)
}).$mount('#app');

别的 js 文件如果要调用 router 方法,直接像 main.js 一样引入直接用就可以了

补充知识:vue.cli3设置单独路由页面全屏切换

不是全屏的时候

vue 实现把路由单独分离出来

是全屏的时候

vue 实现把路由单独分离出来

首先思想:获取当前路由页面的节点,对的节点操作定位,脱离文档流,top:0,;left:0;

1.用ref获取当前路由页面最大的div,也就是template包的第一个div,也可以是其他的

<template>
 <div ref="index"> //ref标识
   <Title :refDome='refDome'></Title>
 </div>
</template>

2.如果要把节点从父组件传到子组件的话,在data里面定义一个值,然后在mounted赋值,在传给子组件(如果没有子组件直接跳过2,直接看3)

父组件

<template>
 <div ref="index">
   <Title :refDome='refDome'></Title> //这里把data的值转给子组件Title 
 </div>
</template>
<script>
import Title from '../components/title'
export default {
  components:{
    Title
  },
  data(){
    return{
      refDome:null
    }
  },
  mounted(){
    this.refDome = this.$refs.index //在这里给data赋值,记得要在mounted赋值
  }
}

子组件props接收值

<script>
export default {
 props: ['refDome'],
}
</script>

3.然后在切换全屏的按钮上绑定@click事件,在点击当时操作节点,在data里面设置一个screen值为1,为了来回切换

// 点击切换全屏
  handleFullScreen() {
   if (this.screen % 2 == 0) {
    this.refDome.style.position = 'static'
    this.screen++
   } else {
    this.refDome.style.width = '100%'
    this.refDome.style.height = '100%'
    this.refDome.style.position = 'absolute'
    this.refDome.style.top = '0'
    this.refDome.style.left = '0'
    this.refDome.style.zIndex = '10'
    this.refDome.style.background = '#fff'
    this.screen++
   }
  },

以上这篇vue 实现把路由单独分离出来就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
在Javascript中为String对象添加trim,ltrim,rtrim方法
Sep 22 Javascript
pjblog中的UBBCode.js
Apr 25 Javascript
XmlUtils JS操作XML工具类
Oct 01 Javascript
jQuery中empty()方法用法实例
Jan 16 Javascript
javascript实现图片上传前台页面
Aug 18 Javascript
详解AngularJS中的filter过滤器用法
Jan 04 Javascript
js实现纯前端的图片预览
Apr 27 Javascript
jQuery插件AjaxFileUpload实现ajax文件上传
May 05 Javascript
Bootstrap + AngularJS 实现简单的数据过滤字符查找功能
Jul 27 Javascript
JS库之Particles.js中文开发手册及参数详解
Sep 13 Javascript
Angular2使用SVG自定义图表(条形图、折线图)组件示例
May 10 Javascript
JavaScript跳出循环的三种方法(break, return, continue)
Jul 30 Javascript
vue项目接口域名动态获取操作
Aug 13 #Javascript
vue接通后端api以及部署到服务器操作
Aug 13 #Javascript
vue打包npm run build时候界面报错的解决
Aug 13 #Javascript
解决vue项目,npm run build后,报路径错的问题
Aug 13 #Javascript
vue项目接口管理,所有接口都在apis文件夹中统一管理操作
Aug 13 #Javascript
vue实现把接口单独存放在一个文件方式
Aug 13 #Javascript
js实现幻灯片轮播图
Aug 14 #Javascript
You might like
php写的简易聊天室代码
2011/06/04 PHP
PHP开发工具ZendStudio下Xdebug工具使用说明详解
2013/11/11 PHP
PHP采集静态页面并把页面css,img,js保存的方法
2014/12/23 PHP
PHP实现批量上传单个文件
2015/12/29 PHP
PHP微信开发之微信消息自动回复下所遇到的坑
2016/05/09 PHP
关于php中的json_encode()和json_decode()函数的一些说明
2016/11/20 PHP
jQuery ui 利用 datepicker插件实现开始日期(minDate)和结束日期(maxDate)
2014/05/22 Javascript
jQuery实现动态表单验证时文本框抖动效果完整实例
2015/08/21 Javascript
第一次接触神奇的Bootstrap网格系统
2016/07/27 Javascript
AngularJS 指令详细介绍
2016/07/27 Javascript
微信小程序 五星评价功能的实现
2017/03/09 Javascript
laydate 显示结束时间不小于开始时间的实例
2017/08/11 Javascript
JS验证输入的是否是数字及保留几位小数问题
2018/05/09 Javascript
Angular5.0 子组件通过service传递值给父组件的方法
2018/07/13 Javascript
微信小程序结合Storage实现搜索历史效果
2019/05/18 Javascript
vue页面跳转实现页面缓存操作
2020/07/22 Javascript
Python中的CURL PycURL使用例子
2014/06/01 Python
python访问mysql数据库的实现方法(2则示例)
2016/01/06 Python
解决出现Incorrect integer value: '' for column 'id' at row 1的问题
2017/10/29 Python
Python多继承原理与用法示例
2018/08/23 Python
学Python 3的理由和必要性
2019/11/19 Python
详解有关PyCharm安装库失败的问题的解决方法
2020/02/02 Python
Python Handler处理器和自定义Opener原理详解
2020/03/05 Python
django inspectdb 操作已有数据库数据的使用步骤
2021/02/07 Python
css3 实现圆形旋转倒计时
2018/02/24 HTML / CSS
Html5 web本地存储实例详解
2016/07/28 HTML / CSS
在线购买澳大利亚设计师手拿包和奢华晚装手袋:Olga Berg
2019/03/20 全球购物
澳大利亚领先的武术用品和健身器材供应商:SMAI
2019/03/24 全球购物
问卷调查计划书
2014/01/10 职场文书
技术总监管理岗位职责
2014/03/09 职场文书
我有一个梦想演讲稿
2014/05/05 职场文书
就业协议书范本
2014/10/08 职场文书
2016年学校招生广告语
2016/01/28 职场文书
2019年聘任书的写作格式及范文!
2019/07/03 职场文书
如何理解Vue简单状态管理之store模式
2021/05/15 Vue.js
数据设计之权限的实现
2022/08/05 MySQL