美文网首页
微信小程序 开发总结

微信小程序 开发总结

作者: Yang152412 | 来源:发表于2016-11-30 16:47 被阅读614次

    一、TabBar

    官方网址:https://mp.weixin.qq.com/debug/wxadoc/dev/framework/config.html

    1、只能再 app.json 中配置,且 “pages”属性 第一个必须是 tabBar 中的页面,才会显示。在子页面配置均不显示。

    page.json
    每一个小程序页面也可以使用.json
    文件来对本页面的窗口表现进行配置。 页面的配置比app.json
    全局配置简单得多,只是设置 app.json 中的 window 配置项的内容,页面中配置项会覆盖 app.json 的 window 中相同的配置项。
    
    页面的.json
    只能设置 window
     相关的配置项,以决定本页面的窗口表现,所以无需写 window
     这个键,
    

    二、列表

    <block wx:for="{{page}}" wx:for-index="item_index" wx:for-item="item" wx:key="category_item">
    
                         <view class="icon" bindtap="categoryIconSelected" data-page-index="{{page_index}}" data-item-index="{{item_index}}">
    
                             <image class="icon-img" src="{{item.icon_url}}"></image>
    
                             <text class="icon-title">{{item.name}}</text>
    
                         </view>
    
                     </block>
    

    wx:for-index 的值 不能用中划线,否则 绑定事件里面读不到正确的值,回事 Nan。而且 点击事件 传递 Object。都是字符串。

    三、ScrollView
    必须设置 固定高度,且 设置 100% 好像不起作用,必须设置 一个数值。

    <scroll-view scroll-y="true" style="height: {{viewHeight}}px;" bindscrolltolower="loadMore" bindscrolltoupper="refesh">
    </scroll-view>
    

    四、window

    wx.getSystemInfo( {
    
                success: ( res ) => {
    
                    console.log('onLoad,getSystemInfo',res)
    
                    this.setData({
    
                    viewHeight: res.windowHeight,
    
                    viewWidth: res.windowWidth
    
                    })
    
                }
    
            })
    

    得到的 windowHeight 是 当前 view 的 height,并不是整个 window 的 height。会去掉 navigationBar 和 tabBar。

    五、自带下拉刷新
    可以在 app.json 中的 window 对全局设置,

    "window":{
    
        "navigationBarBackgroundColor": "#F85825",
    
        "navigationBarTitleText": "",
    
        "navigationBarTextStyle":"white",
    
        "enablePullDownRefresh":true,
    
        "backgroundTextStyle":"dark",
    
        "backgroundColor":"#f5f5f5"
    
      },
    
    也可以单独对某一个 页面设置:
    
    {
    
        "navigationBarTitleText": "邻居",
    
        "enablePullDownRefresh":true,
    
        "backgroundTextStyle":"light",
    
        "backgroundColor":"#ff0000"
    
    }
    
    但是只能设置这三个属性,不能添加 title,样式也只有两种,`light` 和 `dark`。
    监听事件:
    
    // 下拉刷新
    
        onPullDownRefresh: function () {
    
            console.log("onPullDownRefresh");
    
            this.loadData()
    
        },
    
        stopPullDownRefresh: function () {
    
            wx.stopPullDownRefresh({
    
            complete: function (res) {
    
                console.log(res, new Date())
    
            }
    
            })
    
        },
    
        // 加载更多,系统给的监听函数
    
        onReachBottom: function () {
    
            console.log("onReachBottom");
    
        },
    

    六、目前不支持自定义组件
    有一个 第三方的 实现方案,重新打包了 微信开发工具,进行自定义组件。
    https://github.com/maichong/labrador

    七、scroll-view
    不支持 bounces ,不支持 滑动到 边界以外。所以没法自己做下拉刷新。只能用系统给的接口,固定两个 模式,不能添加 文字。

    八、加载更多
    系统提供了整个页面滑动到底部的方法,但是效果不好,不如利用 scroll-view的监听事件

    <scroll-view scroll-y="true" style="background-color: #f5f5f5;height: {{viewHeight}}px;" bindscroll="onScroll" bindscrolltolower="onLoadMore" bindscrolltoupper="onRefesh">
    

    九、外链
    目前没有开发 外链 的接口,所以无法打开新的 webView,无法连接到我们已有的 app,导入流量。

    相关文章

      网友评论

          本文标题:微信小程序 开发总结

          本文链接:https://www.haomeiwen.com/subject/isetmttx.html