小程序开发遇到的难点(小程序开发遇到的难点问题)
本篇文章给大家谈谈小程序开发遇到的难点,以及小程序开发遇到的难点问题对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、小程序开发经验总结
- 2、开发小程序需要注意什么问题
- 3、小程序开发注意事项
小程序开发经验总结
最近一直在做小程序,工作中也遇到了一些问题,踩了一些坑,所以想着写篇文章记录下来,并借此将小程序开发的相关知识进行梳理,方便以后参考,也为刚刚接触小程序的人提供一些思路方法,互相学习,共同进步。
1、微信小程序的目录结构及配置说明
app.json是小程序的全局配置文件,所有配置项key必须使用 双引号括起来 ,value值为字符串类型的也必须使用双引号, 不支持单引号 。
1.1 pages
pages选项是必须配置的。该配置项注册了小程序所有页面的地址,其中每一项都是页面的 路径+文件名 。每一个页面都是由.json、.js、.wxml、.wxss四个文件组成,并且 四个文件的名字必须要一致 。
1.2 tabBar
tabBar 配置项指定 tab 栏的表现,以及 tab 切换时显示的对应页面。其中 list 接受一个数组,只能配置最少 2 个、最多 5 个 tab
1.3 usingComponents
使用自定义组件或者插件提供的组件前,必须先在这里声明
2、开发微信小程序遇到的问题及解决办法
2.1 双向绑定
微信小程序不支持通过v-model的方式实现自动双向绑定,需要给表单元素通过绑定事件,并使用this.setData来赋值实现。
2.2 computed和watch
微信小程序默认是不支持computed和watch的,如需要使用这两项功能,需要安装miniprogram-computed ,安装方法见 官方文档
2.3 对象赋值
如果给对象的属性赋值,可以使用this.setData({'obj.key':value})来赋值,但是如果给某个属性名是变量的属性赋值,通过这种方法是会报错的,经过多次尝试,发现使用如下的方式赋值成功。
let newObj = `obj.${key}`
this.setData({
[newObj]: value
})
2.4 scroll-view
当页面存在弹框容器,并且弹框里的内容是需要滚动条滚动展示时,如果弹框下面那层的容器使用view元素的话,会导致滚动弹框内容时,同时会触发弹框下面那层的页面容器也会一起滚动,解决此问题可以将弹框下面的容器使用scroll-view元素替代view元素
3、小程序测试和发布
由于服务器域名request合法域名每个月 只能修改5次 ,因此在本地开发小程序时,需要在微信调试工具中设置不校验合法域名。等小程序上线前再一次性将所有域名添加到小程序管理后台。
以上便是此次小程序开发中积累的一些经验,希望能给刚刚接触小程序的人提供一些思路方法,在以后的开发中,如果遇到新的问题,继续更新文档......
开发小程序需要注意什么问题
以下内容为小程序开发的常见汇总整理,方便制作需求者参考阅读。
1、不要自己买域名
许多人丢一句:了解,需要做的时候找你。然后就走了,干啥去了,自个买域名去了,其实一般不需要买域名的。
2、不要自己买服务器
不少人按照网络的老教程去买服务器,其实也没有用,现在小程序平台都是内置服务器的模式,不需要单独购买服务器。
3、不要花钱认证小程序账号
正确的流程是先把公众号(服务号)花300块认证,然后调用公众号认证好的资质快速去免费认证小程序、视频号以及腾讯其他产品。
如果先认证小程序则小程序需要花费300元,公众号认证时也需要花费300元。
4、定制开发时需要谨慎考虑
选择定制开发时,一定要问自己是否必须要定制开发才能解决问题?定制开发价格平均上万元,属于行情价。
尤其是客单价低的产品和服务,不建议选择定制开发,当然我们也有定制开发的业务。
比如有人卖小首饰,一个小首饰单价几块钱,想定制开发。花费上万块定制开发一个小程序卖小首饰,它大概率是赔本的。
小程序开发注意事项
1. 开发小程序时,每个页面一定要在app.json文件中注册,页面文件夹和其包含的四个文件的名字要保持一致。
2. 小程序发起的都是HTTPS网络请求,在开发调试的过程中可以不校验协议和TLS版本,但在实际上线后必须进行HTTPS协议通信。
3. 小程序可以进行组件化开发以及数据绑定,所有对于DOM的操作都是基于数据驱动的,并没有直接进行DOM操作的做法,换言之,小程序内没有document对象,原生js和jQuery里的DOM操作思维要舍弃掉。
4. 小程序的网络请求wx.request()是不自带Cookies的,这和浏览器上的网络请求不同,因此基于Cookies实现的会话管理不适用于小程序。
5. 小程序的脚本文件中,内置对象是page,而非传统浏览器里的window,因此所有基于window对象来写的库(例如jQuery)都不适用于小程序。
6. 小程序提供模板功能,模板拥有自己的作用域,它只能使用从data属性传入的数据。
7. 每一个页面文件夹下的.json文件是用来写配置项的,如果该页面无需添加相关配置,.json文件也要写上一对大括号(“{ }”),否则会报错。
8. 在同一个tab里的页面可以跳转,并且允许携带参数。不同tab的页面之间无法跳转,使用wx.navigateTo()接口会报错。同时,tab之间的跳转可以用wx.switchTab()实现,但是路径后不能带参数。
9. 脚本文件里data的数据,在更新的时候要通过this.setData()方法来更新,而不能直接用“=”来做。
10. 在组件标签里,可以通过“data-属性值”的方式绑定我们需要的数据,然后在事件内置event对象里进行获取。
11. 小程序里也存在事件的冒泡,具体的冒泡事件可以参考官方文档,如果希望事件向上冒泡,则使用bind来绑定事件,若希望阻止事件冒泡,就使用catch来进行事件绑定。
12. 小程序支持文件引用,有import和include两种方式,import有作用域,也就是引入的目标文件里import的模板不会被引入;而include等于是将目标文件除 以外的整个代码进行引入。
13. wx.login()和wx.getUserInfo()是两个独立的接口,前者可以实现用户登录,这个过程是悄无声息的,不需要用户授权,登录后可以拿到用户的openid和session_key;而wx.getUserInfo()可以拿到用户的具体信息,这个过程需要获得用户的授权,开发时也必须考虑用户拒绝授权的场景。
14. 目前小程序可以分享给微信好友和微信群,但小程序默认是没有这个功能的,只有在Page里定义了onShareAppMessage事件处理函数,点击小程序右上角才可以看到分享按钮。
关于小程序开发遇到的难点和小程序开发遇到的难点问题的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。