首页 > 其他分享 >vue.js:响应式布局([email protected])

vue.js:响应式布局([email protected])

时间:2023-09-09 12:25:45浏览次数:39  
标签:vue js window 3.3 div screenWidth com

一,代码:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 <template>   <div class="hello">     <div>页面宽度:{{screenWidth}}px</div>     <h1>{{ msg }}</h1>     <div v-if="screenWidth < 768">小屏幕布局</div>     <div v-else-if="screenWidth < 992">中屏幕布局</div>     <div v-else>大屏幕布局</div>     </div> </template>   <script> import { ref,onMounted,onUnmounted } from 'vue'; export default {   name: 'HelloWorld',   setup() {       //获取屏幕宽度     const screenWidth = ref(window.innerWidth);       //处理resize     const handleResize = () => {       screenWidth.value = window.innerWidth     }       //加载页面时,添加对resize的响应     onMounted(() => {       window.addEventListener("resize", handleResize)     })       //页面umount时,移除监听事件     onUnmounted(() => {       window.removeEventListener('resize', handleResize);     })         return {         screenWidth,       }   }, } </script>   <!-- Add "scoped" attribute to limit CSS to this component only --> <style scoped> h3 {   margin: 40px 0 0; } ul {   list-style-type: none;   padding: 0; } li {   display: inline-block;   margin: 0 10px; } a {   color: #42b983; } </style>

二,测试效果:

说明:刘宏缔的架构森林—专注it技术的博客,
网站:https://blog.imgtouch.com
原文: https://blog.imgtouch.com/index.php/2023/09/09/vue-js-xiang-ying-shi-bu-ju-vue-3-3-4/
代码: https://github.com/liuhongdi/ 或 https://gitee.com/liuhongdi
说明:作者:刘宏缔 邮箱: [email protected]

三,查看vue版本:

root@lhdpc:/data/vue/responsive# npm list vue
[email protected] /data/vue/responsive
├─┬ @vue/[email protected]
│ └─┬ @vue/[email protected]
│   ├─┬ @vue/[email protected]
│   │ └── [email protected] deduped
│   └── [email protected] deduped
└─┬ [email protected]
  └─┬ @vue/[email protected]
    └── [email protected] deduped

标签:vue,js,window,3.3,div,screenWidth,com
From: https://www.cnblogs.com/architectforest/p/17689213.html

相关文章

  • 针对JavaScript混淆加密,JShaman推出新功能
    JShaman英文版在最新的一次更新时,增加了新功能:JavaScript代码混淆加密完成后,可以显示各功能耗时、处理的AST节点数量,以此可知对代码做了哪些保护处理。如上图所示,在此例中,对代码共进行了23项混淆加密,JSON数据加密8350处、字符串加密189669处、15222次平展控制流、30722处变量名修改......
  • 生成一个vue3的博客
    Vue3是一个流行的JavaScript框架,用于构建用户界面。要生成一个Vue3的博客,您需要按照以下步骤进行操作:首先,确保您的环境中已经安装了Node.js和npm(Node包管理器)。您可以通过在命令行中运行node-v和npm-v来检查它们的版本。在您喜欢的目录中创建一个新的Vue3项目......
  • vue3 跳转小程序
    兼容微信内跳转和h5跳转第一步在index.html里面引入SKD<!--公众号JSSDK--><scriptsrc="https://res.wx.qq.com/open/js/jweixin-1.6.0.js"></script><!--云开发WebSDK--><scriptsrc="https://res.wx.qq.com/open/js/cloudbase/1.1.0/clo......
  • Vue项目中处理key=value格式的数据-demo
    要从qrCode字符串中获取expiredAt的值,你可以使用JavaScript的字符串操作方法。以下是一个示例,展示如何提取expiredAt的值:constqrCode='expiredAt=1693821037721&token=c214de74cf5847239da3005c9465025e';constparams=newURLSearchParams(qrCode);constexpiredAt=param......
  • web前端技能方法总结(css、js、jquery、html)(2)
    创建链接块display:block;列表样式在一个无序列表中,列表项的标志(marker)是出现在各列表项旁边的圆点。在有序列表中,标志可能是字母、数字或另外某种计数体系中的一个符号。要修改用于列表项的标志类型,可以使用属性list-style-type:ul{list-style-type:square;}1上面的声明把......
  • vue项目实战之图片画廊组件的实现
    前言笔者曾经写过不少或原生的、或封装的第三方插件的组件,总结来说,并不是所有东西都用原生,自定义的才是好的。很多插件做的也是不错的。就比如笔者今天所用的这个插件:vue-awesome-swiper——这个还是很强的【轮播图】/【滚动】插件。非常的好用、方便。需要详细了解的可以去GitHu......
  • JS基础-分支语句
    分支语句是流程控制语句当中的一种可以简单理解为是一种控制条件,当达到某个条件时,执行相应的代码IFIF多条件分支例如:当变量a>b时,则执行语句块1,如果a等于b时,则执行语句块2;最后,如果a>b时,则执行语句块3ifelse语句当中的语句块一般具有排斥作用。如果执行了......
  • vue常见面试题
    1.vue优点?答:轻量级框架:只关注视图层,是一个构建数据的视图集合,大小只有几十kb;简单易学:国人开发,中文文档,不存在语言障碍,易于理解和学习;双向数据绑定:保留了angular的特点,在数据操作方面更为简单;组件化:保留了react的优点,实现了html的封装和重用,在构建单页面应用方面有着独特的优......
  • Vue源码学习(三):<templete>渲染第二步,创建ast语法树
    好家伙,书接上回 在上一篇Vue源码学习(二):<templete>渲染第一步,模板解析中,我们完成了模板解析现在我们继续,将模板解析的转换为ast语法树 1.前情提要代码已开源https://github.com/Fattiger4399/analytic-vue.git手动调试一遍,胜过我解释给你听一万遍functionstart......
  • vue 项目改为微应用后,原本的项目地址打不开为什么?
    当将Vue项目改为微应用之后,需要进行一些配置才能正常运行。首先,确保微应用项目的依赖中已经添加了qiankun,并在主应用的main.js中进行了相关配置。可以参考qiankun官方文档来配置主应用。在进行部署时,需要注意以下几点:跨域配置:微应用可能会存在跨域请求的问题。在部署时,需确保主应用......