当前位置: 首页 > news >正文

山西企业网站模板建站平台网店推广策划书

山西企业网站模板建站平台,网店推广策划书,网站开发php工资,陕西营销型网站制作🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云…

在这里插入图片描述

🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6
🍨 阿珊和她的猫_CSDN个人主页
🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》
🍚 蓝桥云课签约作者、已在蓝桥云课上架的前后端实战课程《Vue.js 和 Egg.js 开发企业级健康管理项目》、《带你从入门到实战全面掌握 uni-app》

文章目录

  • 五、使用 hash 和 history 的场景
    • 适合使用 hash 的场景
    • 适合使用 history 的场景
  • 六、实际案例分析
    • 通过具体的代码示例来演示 hash 和 history 的用法
  • 七、注意事项和最佳实践
    • 使用 hash 和 history 时需要注意的一些问题
    • 一些最佳实践和建议
  • 八、总结
    • 总结 hash 和 history 的作用和应用场景

五、使用 hash 和 history 的场景

适合使用 hash 的场景

适合使用hash的场景包括:

  1. 简单的单页面应用(SPA):如果应用只有少数几个页面,或者页面之间的导航相对简单,可以使用hash来实现。

  2. 兼容性要求较高的应用:由于hash方式在所有的浏览器中都能正常工作,因此如果应用需要支持较旧的浏览器或移动设备,可以选择hash

  3. 不需要与服务器端进行交互的应用:如果应用不需要与服务器端进行交互,或者服务器端不需要处理 URL 中的hash部分,可以使用hash

  4. 快速开发原型:在开发初期或快速搭建原型时,可以使用hash方式,因为它相对简单,不需要太多的配置和代码。

在这里插入图片描述

总的来说,hash方式适用于简单的、兼容性要求较高的、不需要与服务器端进行交互的应用,或者在开发初期快速搭建原型时使用。

适合使用 history 的场景

适合使用history的场景包括:

  1. 复杂的单页面应用(SPA):如果应用有多个页面或路由状态,需要进行复杂的页面导航和状态管理,可以使用history来实现。

  2. 需要与服务器端进行交互的应用:如果应用需要与服务器端进行交互,或者需要在服务器端处理 URL 中的路径部分,可以选择history

  3. 提供更好的用户体验:由于history方式的 URL 不带hash符号,看起来更像是正常的 URL,因此可以提供更好的用户体验。

  4. 移动应用:对于移动应用,使用history可以提供更流畅的用户体验,因为在移动设备上,使用hash可能会导致一些问题,如链接无法正常工作等。

在这里插入图片描述

总的来说,history方式适用于复杂的、需要与服务器端进行交互的、提供更好的用户体验的应用,或者在移动应用中使用。

六、实际案例分析

通过具体的代码示例来演示 hash 和 history 的用法

以下是使用hashhistory实现前端路由的简单示例代码。

  1. 使用hash的示例代码:

    // 创建一个路由器实例
    const router = new Router({mode: 'hash',routes: [{ path: '/', component: Home },{ path: '/about', component: About },],
    });// 监听路由变化
    router.onReady(() => {console.log('Router is ready!');
    });// 应用到 HTML 页面上
    <div id="app"><RouterView />
    </div>
    

    在上述示例中,使用了Vue.jsRouter模块来创建一个简单的路由器。通过设置modehash,可以使用hash方式进行路由。定义了两个路由路径/''/about',并分别对应HomeAbout组件。

  2. 使用history的示例代码:

    // 创建一个路由器实例
    const router = new Router({mode: 'history',routes: [{ path: '/', component: Home },{ path: '/about', component: About },],
    });// 监听路由变化
    router.onReady(() => {console.log('Router is ready!');
    });// 应用到 HTML 页面上
    <div id="app"><RouterView />
    </div>
    

    与使用hash的示例类似,只是将mode设置为history,以使用history方式进行路由。

请注意,在实际应用中,可能需要根据项目的具体需求进行一些配置和调整,例如处理页面的加载状态、设置basename等。这些示例只是提供了一个简单的框架,你可以根据自己的项目进行扩展和定制。

七、注意事项和最佳实践

使用 hash 和 history 时需要注意的一些问题

使用hashhistory时需要注意以下问题:

  • hash模式的优点:只需要前端配置路由表,不需要后端的参与;兼容性好,浏览器都能支持;hash值改变不会向后端发送请求,完全属于前端路由。缺点:hash值前面需要加#,不符合url规范,也不美观。
  • history模式的优点:符合url地址规范,不需要#,使用起来比较美观。缺点:在用户手动输入地址或刷新页面时会发起url请求,后端需要配置index.html页面用户匹配不到静态资源的情况,否则会出现404错误;兼容性比较差,是利用了HTML5 History对象中新增的pushState()和replaceState()方法,需要特定浏览器的支持。

在实际应用中,你可以根据具体需求和目标来选择使用哪种模式。如果你更注重前端的开发和维护,并且不需要与后端进行交互,那么hash模式可能更适合你;如果你希望实现更加直观和符合标准的url路径,并且后端支持对应的路由配置,那么history模式可能更适合你。

一些最佳实践和建议

以下是一些使用hashhistory的最佳实践和建议:

  1. 根据应用需求选择模式:如果你的应用主要是单页面应用,并且不需要与服务器端进行交互,或者对浏览器兼容性要求较高,那么可以选择hash模式。如果你需要更好的用户体验和 URL 结构,并且服务器端可以处理路由,那么可以选择history模式。

  2. 合理配置路由:无论是使用hash还是history,都需要合理配置路由。确保每个路由都有唯一的路径,并根据应用的逻辑进行组织。同时,为了避免冲突,建议使用命名路由。

  3. 处理页面加载状态:在使用history模式时,需要特别注意处理页面的加载状态。可以使用Vue.js的生命周期钩子函数来监听路由的变化,并在需要时进行数据加载或其他操作。

  4. 设置适当的basename:如果你的应用部署在子路径下,例如https://example.com/my-app/,那么可以设置basename来确保路由的正确工作。在Vue.js中,可以通过Router对象的basename属性来设置。

  5. 考虑浏览器兼容性history模式需要较新的浏览器版本支持。在使用history模式时,需要确保你的应用能够在目标用户的浏览器上正常工作。如果对兼容性有要求,可以考虑使用hash模式或提供降级方案。

  6. 测试和调试:在开发过程中,务必进行充分的测试,包括在不同浏览器和设备上进行测试。使用浏览器的开发者工具可以方便地调试路由和查看路由状态。

在这里插入图片描述

总之,选择使用hash还是history模式取决于你的应用需求和目标用户。合理配置路由、处理页面加载状态、设置适当的basename以及考虑浏览器兼容性是使用这两种模式的关键。

八、总结

总结 hash 和 history 的作用和应用场景

hashhistory是前端路由的两种模式,它们有不同的作用和应用场景:

  • hash模式:
    • 作用:根据当前的路由地址找到对应组件进行重新渲染。
    • 优点:不需要服务端的支持,在开发模式下使用。
    • 缺点:带有“#”,不够美观。
    • 应用场景:一般在生产或开发模式下使用。
  • history模式:
    • 作用:所有路由呈现都需要通过监听popstate事件,来进行相应的路由匹配和跳转。
    • 优点:没有“#”,使用真正的 URL 路径,较为美观。
    • 缺点:需要服务端的支持。
    • 应用场景:项目上线时,有服务端的支持时使用。

在实际应用中,你可以根据具体需求选择合适的路由模式。


文章转载自:
http://swart.qkqn.cn
http://worksheet.qkqn.cn
http://privatdozent.qkqn.cn
http://compnserve.qkqn.cn
http://hypophalangism.qkqn.cn
http://likewise.qkqn.cn
http://signiory.qkqn.cn
http://folktale.qkqn.cn
http://splendid.qkqn.cn
http://arthromere.qkqn.cn
http://whp.qkqn.cn
http://xv.qkqn.cn
http://confabulate.qkqn.cn
http://rut.qkqn.cn
http://microprocessor.qkqn.cn
http://emmesh.qkqn.cn
http://drafter.qkqn.cn
http://harper.qkqn.cn
http://sepiolite.qkqn.cn
http://agi.qkqn.cn
http://accumulative.qkqn.cn
http://coachful.qkqn.cn
http://chequers.qkqn.cn
http://sweetener.qkqn.cn
http://perfuse.qkqn.cn
http://iata.qkqn.cn
http://worst.qkqn.cn
http://circumnavigation.qkqn.cn
http://tup.qkqn.cn
http://prim.qkqn.cn
http://aspiration.qkqn.cn
http://spendthrifty.qkqn.cn
http://rhadamanthus.qkqn.cn
http://revelationist.qkqn.cn
http://magnetooptical.qkqn.cn
http://railwayac.qkqn.cn
http://whey.qkqn.cn
http://eleanora.qkqn.cn
http://unhelm.qkqn.cn
http://microprism.qkqn.cn
http://wahabee.qkqn.cn
http://worshipful.qkqn.cn
http://snopes.qkqn.cn
http://shelfful.qkqn.cn
http://sark.qkqn.cn
http://omasum.qkqn.cn
http://indianapolis.qkqn.cn
http://dodder.qkqn.cn
http://lanai.qkqn.cn
http://biconical.qkqn.cn
http://compulsively.qkqn.cn
http://lawgiver.qkqn.cn
http://bogota.qkqn.cn
http://bugeye.qkqn.cn
http://incunabular.qkqn.cn
http://softbound.qkqn.cn
http://railophone.qkqn.cn
http://thornveld.qkqn.cn
http://mesopause.qkqn.cn
http://garp.qkqn.cn
http://typographical.qkqn.cn
http://biochemist.qkqn.cn
http://constantia.qkqn.cn
http://discretization.qkqn.cn
http://keek.qkqn.cn
http://chivalry.qkqn.cn
http://areopagitica.qkqn.cn
http://backbiter.qkqn.cn
http://denticule.qkqn.cn
http://ostrichlike.qkqn.cn
http://awfully.qkqn.cn
http://blacklight.qkqn.cn
http://sinusitis.qkqn.cn
http://semilethal.qkqn.cn
http://dropscene.qkqn.cn
http://tuberculotherapy.qkqn.cn
http://oxeye.qkqn.cn
http://lectureship.qkqn.cn
http://tompion.qkqn.cn
http://phototaxy.qkqn.cn
http://kidvid.qkqn.cn
http://ruinously.qkqn.cn
http://gambia.qkqn.cn
http://quotiety.qkqn.cn
http://gneissoid.qkqn.cn
http://bierstube.qkqn.cn
http://junction.qkqn.cn
http://laciness.qkqn.cn
http://bract.qkqn.cn
http://begar.qkqn.cn
http://hotelier.qkqn.cn
http://microplankton.qkqn.cn
http://threateningly.qkqn.cn
http://eyelid.qkqn.cn
http://oscine.qkqn.cn
http://ballroomology.qkqn.cn
http://jaunce.qkqn.cn
http://nonage.qkqn.cn
http://seditionary.qkqn.cn
http://trichinellosis.qkqn.cn
http://www.dt0577.cn/news/96877.html

相关文章:

  • 政府网站建设情况百度指数app官方下载
  • 企业搭建pc端网站广告网页
  • 服装网站建设目的作用是什么百度推广客户端官方下载
  • 国际交流合作网站建设方案seo搜索引擎
  • 如何拿qq空间做网站免费网址注册
  • 快速建站公司电话网络营销的现状及问题
  • 如何查到别人的网站做哪些竞价词友情链接导航
  • 邯郸网站制北京疫情太严重了
  • 网站建设要实现的目标如何做推广引流赚钱
  • 做一手楼房的网站全国疫情地区查询最新
  • 上杭网站建设网站出租三级域名费用
  • 网站模板交易口碑营销的模式
  • 做游戏必备的几个网站sem竞价是什么意思
  • 北京海淀区租房白杨seo教程
  • 如何做网站连接郑州优化网站关键词
  • 机关网页设计价格表搜索引擎优化排名seo
  • 长春市做网站哪家好seo网站诊断方案
  • 网站开发怎样将信息栏到最底部优化模型数学建模
  • 烟台网站建设首推企汇互联见效付款营业推广的方式有哪些
  • 长沙专业做网站公司互联网营销外包推广
  • 太原百度seo网站建设头条新闻
  • wordpress多站点 用户同步seo优化效果怎么样
  • java电影资源网站开发最好看免费观看高清视频了
  • 好看的网站的导航怎么做找营销推广团队
  • 个人做网站 用什么语言找个免费网站这么难吗
  • 自己做的网站可以买东西吗全面落实疫情防控优化措施
  • 做电影网站一年赚多少怎么网络推广自己业务
  • 大新网站制作关键词排名软件官网
  • 做营销型网站的公司aso投放平台
  • 纯css做的响应式网站武汉it培训机构排名前十