2023年7月2日发(作者:)
微信⼩程序相关知识点1、简单描述下微信⼩程序的相关⽂件类型?答:微信⼩程序项⽬结构主要有四个⽂件类型,如下① WXML (WeiXin Markup Language)是框架设计的⼀套标签语⾔,结合基础组件、事件系统,可以构建出页⾯的结构。内部主要是微信⾃⼰定义的⼀套组件。② WXSS (WeiXin Style Sheets)是⼀套样式语⾔,⽤于描述 WXML 的组件样式,③ js 逻辑处理,⽹络请求④ json ⼩程序设置,如页⾯注册,页⾯标题及tabBar。⑤ 必须要有这个⽂件,如果没有这个⽂件,项⽬⽆法运⾏,因为微信框架把这个作为配置⽂件⼊⼝,整个⼩程序的全局配置。包括页⾯注册,⽹络设置,以及⼩程序的window背景⾊,配置导航条样式,配置默认标题。⑥ 必须要有这个⽂件,没有也是会报错!但是这个⽂件创建⼀下就⾏ 什么都不需要写以后我们可以在这个⽂件中监听并处理⼩程序的⽣命周期函数、声明全局变量。⑦ 2、你是怎么封装微信⼩程序的数据请求的?答:① 将所有的接⼝放在统⼀的js⽂件中并导出② 在中创建封装请求数据的⽅法③ 在⼦页⾯中调⽤封装的⽅法请求数据3、有哪些参数传值的⽅法?答:① 给HTML元素添加data-*属性来传递我们需要的值,然后通过t或onload的param参数获取。但data-名称不能有⼤写字母和不可以存放对象② 设置id 的⽅法标识来传值通过获取设置的id的值,然后通过设置全局对象的⽅式来传递数值③ 在navigator中添加参数传值4、你使⽤过哪些⽅法,来提⾼微信⼩程序的应⽤速度?答:⼀、提⾼页⾯加载速度⼆、⽤户⾏为预测三、减少默认data的⼤⼩四、组件化⽅案5、⼩程序与原⽣App哪个好?
答: ⼩程序除了拥有公众号的低开发成本、低获客成本低以及⽆需下载等优势,在服务请求延时与⽤户使⽤体验是都得到了较⼤幅度 的提升,使得其能够承载跟复杂的服务功能以及使⽤户获得更好的⽤户体验。6、简述微信⼩程序原理? 答:微信⼩程序采⽤JavaScript、WXML、WXSS三种技术进⾏开发,从技术讲和现有的前端开发差不多,但深⼊挖掘的话却⼜有所不同。JavaScript:⾸先JavaScript的代码是运⾏在微信App中的,并不是运⾏在浏览器中,因此⼀些H5技术的应⽤,需要微信App提供对应的API⽀持,⽽这限制住了H5技术的应⽤,且其不能称为严格的H5,可以称其为伪H5,同理,微信提供的独有的某些API,H5也不⽀持或⽀持的不是特别好。WXML:WXML微信⾃⼰基于XML语法开发的,因此开发时,只能使⽤微信提供的现有标签,HTML的标签是⽆法使⽤的。WXSS:WXSS具有CSS的⼤部分特性,但并不是所有的都⽀持,⽽且⽀持哪些,不⽀持哪些并没有详细的⽂档。微信的架构,是数据驱动的架构模式,它的UI和数据是分离的,所有的页⾯更新,都需要通过对数据的更改来实现。⼩程序分为两个部分webview和appService。其中webview主要⽤来展现UI,appService有来处理业务逻辑、数据及接⼝调⽤。它们在两个进程中运⾏,通过系统层JSBridge实现通信,实现UI的渲染、事件的处理7、分析下微信⼩程序的优劣势?答:优势:1、⽆需下载,通过搜索和扫⼀扫就可以打开。2、良好的⽤户体验:打开速度快。3、开发成本要⽐App要低。4、安卓上可以添加到桌⾯,与原⽣App差不多。5、为⽤户提供良好的安全保障。⼩程序的发布,微信拥有⼀套严格的审查流程, 不能通过审查的⼩程序是⽆法发布到线上的。劣势:1、限制较多。页⾯⼤⼩不能超过1M。不能打开超过5个层级的页⾯。2、样式单⼀。⼩程序的部分组件已经是成型的了,样式不可以修改。例如:幻灯⽚、导航。3、推⼴⾯窄,不能分享朋友圈,只能通过分享给朋友,附近⼩程序推⼴。其中附近⼩程序也受到微信的限制。4、依托于微信,⽆法开发后台管理功能。8、微信⼩程序与H5的区别?答:① 是运⾏环境的不同:传统的HTML5的运⾏环境是浏览器,包括webview,⽽微信⼩程序的运⾏环境并⾮完整的浏览器,是微信开发团队基于浏览器内核完全重构的⼀个内置解析器,针对⼩程序专门做了优化,配合⾃⼰定义的开发语⾔标准,提升了⼩程序的性能。② 是开发成本的不同:只在微信中运⾏,所以不⽤再去顾虑浏览器兼容性,不⽤担⼼⽣产环境中出现不可预料的奇妙BUG③ 是获取系统级权限的不同:系统级权限都可以和微信⼩程序⽆缝衔接④ 便是应⽤在⽣产环境的运⾏流畅度:长久以来,当HTML5应⽤⾯对复杂的业务逻辑或者丰富的页⾯交互时,它的体验总是不尽⼈意,需要不断的对项⽬优化来提升⽤户体验。但是由于微信⼩程序运⾏环境独⽴9、怎么解决⼩程序的异步请求问题?答:在回调函数中调⽤下⼀个组件的函数:ess: function (info) { Callback(info)}ad: function () { Callback = res => { (res)
}}10、⼩程序的双向绑定和vue哪⾥不⼀样?答:⼩程序直接的属性是不可以同步到视图的,必须调⽤:a({ noBind:true})11、⼩程序的wxss和css有哪些不⼀样的地⽅?答:⼀、wxss的图⽚引⼊需使⽤外链地址;⼆、没有Body;样式可直接使⽤import导⼊12、webview中的页⾯怎么跳回⼩程序中?答:⾸先要引⼊最新版的,然后teTo({ url: '/pages/login/login'+'$params'})13、⼩程序关联微信公众号如何确定⽤户的唯⼀性?答:使⽤rInfo⽅法withCredentials为 true 时 可获取encryptedData,⾥⾯有 union_id。后端需要进⾏对称解密14、如何实现下拉刷新?答:⽤view代替scroll-view,,设置onPullDownRefresh函数实现15、使⽤webview直接加载要注意哪些事项?答:⼀、必须要在⼩程序后台使⽤管理员添加业务域名;⼆、h5页⾯跳转⾄⼩程序的脚本必须是1.3.1以上;三、微信分享只可以都是⼩程序的主名称了,如果要⾃定义分享的内容,需⼩程序版本在1.7.1以上;四、h5的⽀付不可以是微信公众号的appid,必须是⼩程序的appid,⽽且⽤户的openid也必须是⽤户和⼩程序的。16、⼩程序调⽤后台接⼝遇到哪些问题?答:1、数据的⼤⼩有限制,超过范围会直接导致整个⼩程序崩溃,除⾮重启⼩程序;2、⼩程序不可以直接渲染⽂章内容页这类型的html⽂本内容,若需显⽰要借住插件,但插件渲染会导致页⾯加载变慢,所以最好在后台对⽂章内容的html进⾏过滤,后台直接处理批量替换p标签div标签为view标签,然后其它的标签让插件来做,减轻前端的时间。17、webview的页⾯怎么跳转到⼩程序导航的页⾯?答:⼩程序导航的页⾯可以通过switchTab,但默认情况是不会重新加载数据的。若需加载新数据,则在success属性中加⼊以下代码即可:success: function (e) { var page = getCurrentPages().pop(); if (page == undefined || page == null) return; ();} webview的页⾯,则通过Tab({ url: '/pages/index/index'})18、⼩程序和Vue写法的区别?答:⼀、循环遍历的时候:⼩程序是wx:for="list",⽽Vue是v-for="info in list"⼆、调⽤data模型的时候:⼩程序是,⽽Vue是;给模型赋值也不⼀样,⼩程序是a({uinfo:1}),⽽Vue是直接=1
发布者:admin,转转请注明出处:http://www.yc00.com/web/1688278836a112423.html
评论列表(0条)