• web前端在手机端打开进行页面提示——手机端适配问题


    需求背景:由于公司业务主要在PC端进行操作,部分ipad平板用户(做数据查看),手机端不是我们的核心用户场景。手机有专门的app。产品提出了当页面在手机端打开时,手机端进行提示,请前往网页端进行操作。

     要在Vue web应用中检测屏幕是否是手机打开,并对所有路由进行提示,可以使用Vue Router的导航守卫来实现。以下是一种通用的设计方案:

     beforeEach全局路由导航守卫

    1. 创建一个全局的路由导航守卫,用于检测屏幕是否是手机打开。

    // main.js
     

    1. import Vue from 'vue';
    2. import App from './App.vue';
    3. import router from './router';
    4. router.beforeEach((to, from, next) => {
    5. const isMobile = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);
    6. if (isMobile) {
    7. // 如果是手机打开,跳转到提示页面
    8. next('/mobile-warning');
    9. } else {
    10. next();
    11. }
    12. });
    13. new Vue({
    14. router,
    15. render: h => h(App),
    16. }).$mount('#app');

    提示页面MobileWarning.vue

    创建一个名为`MobileWarning`的组件,用于显示手机打开的提示页面

    1. <script>
    2. export default {
    3. name: 'MobileWarning',
    4. };
    5. script>
    6. <style scoped>
    7. /* 样式 */
    8. style>
    9. ```

    配置跳转路由/mobile-warning

     在路由配置中添加一个名为`mobile-warning`的路由,指向`MobileWarning`组件

    1. // router.js
    2. import Vue from 'vue';
    3. import Router from 'vue-router';
    4. import MobileWarning from './components/MobileWarning.vue';
    5. Vue.use(Router);
    6. export default new Router({
    7. routes: [
    8. {
    9. path: '/mobile-warning',
    10. name: 'MobileWarning',
    11. component: MobileWarning,
    12. },
    13. // 其他路由配置
    14. ],
    15. });

    这样,当用户在手机上打开应用时,会自动跳转到`/mobile-warning`路由,显示手机打开的提示页面。如果用户在电脑上打开应用,则正常显示其他路由。

  • 相关阅读:
    LLMs 规模化人类反馈Scaling human feedback
    使用node-cmd重启electron
    sql打卡记录四 集合运算
    内网横向移动
    Http协议之Content-Type理解
    谷粒学苑_第六天
    PostgreSQL数据库----pgAdmin客户端工具的使用
    Frechet distance距离计算原理及python实现
    Chain-Of-Note:解决噪声数据、不相关文档和域外场景来改进RAG的表现
    Redis 6.0源码学习 RedisObject
  • 原文地址:https://blog.csdn.net/qq_36384657/article/details/136264152