微信小程序编写过程中的报错及解决办法 - 新闻资讯 - 云南小程序开发|云南软件开发|云南网站建设-昆明葵宇信息科技有限公司

159-8711-8523

云南网建设/小程序开发/软件开发

知识

不管是网站,软件还是小程序,都要直接或间接能为您产生价值,我们在追求其视觉表现的同时,更侧重于功能的便捷,营销的便利,运营的高效,让网站成为营销工具,让软件能切实提升企业内部管理水平和效率。优秀的程序为后期升级提供便捷的支持!

您当前位置>首页 » 新闻资讯 » 小程序相关 >

微信小程序编写过程中的报错及解决办法

发表时间:2021-1-5

发布人:葵宇科技

浏览次数:62

1.渲染层错误

官方文档:(developers.weixin.qq.com/miniprogram…)


细看文档才发现,组件的CSS选择器是有限制的。其中最主要的一点就是只能使用类选择器。

2.组件lifetimes和pageLifetimes无效


我在attached和show生命周期函数中分别写个log,如图所示,控制台毫无反应。

官方文档:(developers.weixin.qq.com/miniprogram…)

查阅文档后,知道了是我的基础版本过低,无法使用lifetimes和pageLifetimes,在开发者工具中调试版本:

3.自定义组件flex-grow无效

当某个page页面是由多个component组成的时候,该page页使用了flex布局,而在某个子组件中使用flex-grow无效。

组件flex-grow子所以无效,是因为微信小程序在自定义组件上封装了一层view,因此设置flex-gorw无效,解决方法在上面链接。


4.修改不了自定义组件或者内置组件的margin、padding

修改内置组件样式:在组件外层包裹一个view,

修改自定义组件样式:需要在组件Component构造器的选项中添加externalClasses配置

/*custom-component.js*/
Component({
	externalClasses:['my-class','test'],
    data:{}
})
/*custom-component.wxml*/
/*在引用组件的wxml*/

复制代码

但是,我发现即便如此,也不能修改组件内置的padding和margin样式,如果非要修改可使用!import,其实这就是涉及到一个选择器优先级的问题。

  • 选择器名越详细优先级越高。
  • !important优先级最高。

5.没有像Vue的vuex和React的redux那样的状态管理?

Omix(读音 / [?om?k?:s] /, 汉字类似于 欧米可思) 是一款使用 JSX 或者 hyperscript 创建Web用户界面的组件化框架,故得名:Omix。

具体使用方法查看官方文档:(cloud.tencent.com/developer/a…)

可使用omi-cli快速搭建脚手架,

yarn global add omi-cli      //安装CLI
omi init-x [project name]   //初始化项目  x意思是使用omix初始化项目 
复制代码
  • API
  1. create(store, option) 创建页面,
  2. store 从页面注入,可跨页面跨组件共享
  3. create(option) 创建组件
  4. this.store 和 this.data 全局 store 和 data,页面和页面所有组件可以拿到, 操作 data 会自动更新视图
  5. 不需要注入 store 的页面或组件用使用Page和Component 构造器, Component 通过 triggerEvent 与上层通讯或与上层的 store 交互

相关案例查看更多