小程序-SaUi-遇到的坑

来点现实中遇到的坑儿吧~~~~~~~~~~~解决前 心中有千万个草泥马在奔跑。解决后,kao 这么简单!!!!!!!!

1、项目需要用到slider时,容易触发到右滑切换到上一页的问题。 解决方法: 在json: { "enablePullDownRefresh": false, "disableScroll": true, "disableSwipeBack": true }

2、做了项目后,你会发现,更新无处不在。小程序的所有页面一打开就全部加载好的,所以我们就需要打开到哪,就setData到哪,,,,这里你会发现组件更新的重要性!!!幸好我们现在的框架就完全的支持到这一点,从item->list->tabs->…每个组件都对setData作了封装。更新解决了,后面你又会发现一次性更新所有的话,内容越多,反应越慢。不怕。这时我们还有指定某一条的更新。封装得到了findAndUpdate的方法

3、原生组件,层级太高,在开发者工具正常显示,所以很努力去折腾完善,…完成后在真机想炫耀一翻…妈啊,这是什么鬼东西!!自身折腾了目前已经有的canvas插件三个,只要你的页面需要滚动。这些插件就没有任何意义。这个问题官方目前没有很好的解决办法,后面想到的解决办法就是后端转成图片生成,前端这边读取就好了,可是呢,,说什么对服务器的要求很高,如果是实时的,体验更差。最后的最后,就是用到嵌h5的方式了

	wxml:
	<web-view src="{{url}}" bindmessage=""></web-view>

4、定位问题。需要在app.json里添加

  "permission": {
   "scope.userLocation": {
   "desc": "你的位置信息将用于小程序位置接口的效果展示"
   }
 }

5、顶部导航栏的背景色是可以修改的,自定义的。在app.json的

    "window":{
       "backgroundTextStyle":"light",
       "navigationBarBackgroundColor": "#000",
       "navigationBarTitleText": "Saui",
       "navigationBarTextStyle": "white"
     }

6、包太多?需要分包?:同样是app.json

  "subpackages": [{
     "root": "新建目录名称/",
     "name": "saui",
     "pages": [
       "index/index",
       "index2/index",
       "index3/index"
     ]
   }],

7、一个页面,组件之间的交互是无处不在的。在我们的框架中我们可以在组件里嵌组件。不仅可以写自己的组件, 也能自由的去嵌套别人已经写的组件。这个可以解决什么问题呢。在没有组件之间的嵌套,我们写业务时,会有n多个view 比如:关于我们。关于我们里面有文字,图片,文字还有下划画,小程序是不能写结构的,所以我们需要对文字有特殊处理的话,

静态式写法:
<view class='plr-default mt-90-r bg-linear'>
      <view class="article-title mb-58-r">saui框架</view>
      <view class="hbody">
        <view class="article-content mb-58-r">虽然我们长得丑,但是我们很强大</view>
        <view class="article-content mb-58-r">虽然我们长得丑,但是<text style='text-decoration:underline;'>我</text>,<text style='text-decoration:underline;'>们</text>,<text style='text-decoration:underline;'>很</text><text style='text-decoration:underline;'>强大</text> </view>
        <view class="article-content mb-58-r">虽然我们长得丑,但是我们很强大</view>
        <view class='hei-257-r'>
          <image src="/images/about-pic2.png" />
        </view>
      </view>
    </view>
	组件式:(注:@html是用到了别人的wxParse,封装到我们的框架里)
    wxml: 
    	<ui-item item="{{aboutData}}" />
        
        
     js:
     	data: {
            aboutData: Pager.item({
            	'@html': <div class='plr-default mt-90-r bg-linear'><h2 class="article-title mb-58-r">saui框架</h2><p>xxxxxx</p></div>
            })
        }

8、显示弹出层的时候,滚动屏幕,底部会跟着滚动,这时。 我们能干什么呢。给scroll-view组件里 scroll-y一个变量,在js里显示弹出层时,去对这个组件作setDate。普通写法:

	wxml:
	<scroll-view scroll-y="{{isScrollx}}" class="scroll-wrap-nav">
    
    
    js: 
    	data: {isScrollx: true},
        onReady: function(){
        	//弹出时
		this.setData({isScrollx: false}).
	}

9…待续

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券