精华内容
下载资源
问答
  • 微信小程序离线手册

    2017-01-20 09:27:09
    微信小程序离线手册
  • 微信小程序离线开发手册.chm
  • 该文档为微信小程序离线文档,CHM格式.下载后,可以离线查看 本次上传的是文档的百度网盘下载地址
  • 微信小程序离线开发手册CHM1.1版本

    热门讨论 2016-11-04 10:17:20
    最新的微信小程序开发手册1.1版本,内容全面,各种api都包含。微信小程序开发和学习的必备手册。提高了用户体验,比上一个版本更加友好。
  • 微信小程序开发手册官网同步离线版,更新于2016年10月20日。
  • 最新的微信小程序开发手册1.1版本,内容全面,各种api都包含。微信小程序开发和学习的必备手册。提高了用户体验,比上一个版本更加友好。chm文档如果打开空白,压缩包内有解决方案
  • 微信小程序最近离线文档,抓取日期:2017-9-20。本文档通过PHP网络爬虫爬取,适用于在公司或者宿舍没网的情况下,方便查阅开发文档。
  • 微信小程序开发文档,doc版和chm版完整
  • 微信小程序 微信官方日前发布了关于小程序的帮助手册,起地址为: https://mp.weixin.qq.com/debug/wxadoc/dev/ 如果需要最新离线版,可以打开 https://wechats.github.io/tinyapp-doc/ 然后点右上角的 pdf 图标 ...

    微信小程序

    微信官方日前发布了关于小程序的帮助手册,起地址为:

    https://mp.weixin.qq.com/debug/wxadoc/dev/

    如果需要最新离线版,可以打开

    https://wechats.github.io/tinyapp-doc/

    然后点右上角的 pdf 图标

    快速下载通道

    类型地址
    htmlhttps://github.com/wechats/tinyapp-doc/archive/master.zip
    pdfhttps://wechats.github.io/tinyapp-doc/gen/tinyapp-doc.pdf
    epubhttps://wechats.github.io/tinyapp-doc/gen/tinyapp-doc.epub
    mobihttps://wechats.github.io/tinyapp-doc/gen/tinyapp-doc.mobi

    原文请戳: http://www.tonglei.win/2016/10/18/IT学习/微信/微信小程序官方手册离线版本发布/ @铜镭

    转载于:https://my.oschina.net/tonglei0429/blog/760088

    展开全文
  •  再看我们的标题,也就是重点,需要在页面上显示当前是否在线,也就是需要在接收到网络状态改变的广播的时候,要能够与Activity进行交互,通知Activity当前的网络状态,让Activity进行提示通知当前是在线还是离线,...
    先看效果图,有图有效果了才有动力(右边是关闭wifi/3g之后的Title样子) 
    
    首先了解一下网络状态的判断方法,网络状态是一个SystemService,可以通过context.getSystemService(String name)获取,对应的服务名称为context.CONNECTIVITY_SERVICE; 获取网络状态管理对象


      ConnectivityManager connManger = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE);

      在ConnectivityManger对象中有一些相关的方法

      NetworkInfo[] infos = connManger.getAllNetworkInfo(); // 获取所有的连接对象信息

      NetworkInfo active_info = connManger.getActiveNetworkInfo(); // 获取可用的连接对象信息

      active_info.isAvailable(); // 可用

      active_info.isConnected(); // 已经连接

      active_info.isConnectedOrConnecting(); // 已经连接或正在连接

      // active_info.getState().CONNECTED;

      // active_info.getState().CONNECTING;

      


      也可以指定获取连接的网络如{3G,WiFi,蓝牙等如止图右边框} 判断完网络状态之后,如果网络没有打开当前没有可用的网络,肯定希望直接打开网络设置进行网络的配置,看下面的代码


      Intent mIntent = new Intent("/");

      ComponentName component = new ComponentName("com.android.settings", "com.android.settings.WirelessSettings");

      mIntent.setComponent(component);

      mIntent.setAction("android.intent.action.VIEW");

      startActivity(mIntent);


      至此对网络状态的判断有了了解,怎么实时的监听网络状态改变呢,在android中,当网络状态发生改变的时候会发出一个广播,我们只需要接收到此广播即可进行判断

      public static final String CONNECTIVITY_ACTION = "android.net.conn.CONNECTIVITY_CHANGE";


      再看我们的标题,也就是重点,需要在页面上显示当前是否在线,也就是需要在接收到网络状态改变的广播的时候,要能够与Activity进行交互,通知Activity当前的网络状态,让Activity进行提示通知当前是在线还是离线,这就需要写一个Service,并且绑定到Activity,把广播监听到的实时的网络状态返回给Activity


      public class ReceiveMsgService extends Service {// 实时监听网络状态改变

      private BroadcastReceiver mReceiver = new BroadcastReceiver() {

      @Override

      public void onReceive(Context context, Intent intent) {

      String action = intent.getAction();

      if (action.equals(ConnectivityManager.CONNECTIVITY_ACTION)) {

      Timer timer = new Timer();

      timer.schedule(new QunXTask(getApplicationContext()), new Date());

      }

      }

      };public interface GetConnectState {

      public void GetState(boolean isConnected); // 网络状态改变之后,通过此接口的实例通知当前网络的状态,此接口在Activity中注入实例对象


      }

      private GetConnectState onGetConnectState;

      public void setOnGetConnectState(GetConnectState onGetConnectState) {

      this.onGetConnectState = onGetConnectState;

      }

      private Binder binder = new MyBinder();

      private boolean isContected = true;

      @Override

      public IBinder onBind(Intent intent) {

      return binder;

      }

      @Override

      public void onCreate() {// 注册广播

      IntentFilter mFilter = new IntentFilter();

      mFilter.addAction(ConnectivityManager.CONNECTIVITY_ACTION); // 添加接收网络连接状态改变的Action

      registerReceiver(mReceiver, mFilter);

      }

      class QunXTask extends TimerTask {

      private Context context;

      public QunXTask(Context context) {

      this.context = context;

      }

      @Override

      public void run() {

      if (isConnectNet()) {

      isContected = true;

      } else {

      isContected = false;

      }

      if (onGetConnectState != null) {

      onGetConnectState.GetState(isContected); // 通知网络状态改变

      }

      }

      /**

      * 判断是否连通网络

      *

      * @return

      */

      private boolean isConnectNet() {

      ConnectivityManager connectivityManager = (ConnectivityManager) context

      .getSystemService(Context.CONNECTIVITY_SERVICE);

      NetworkInfo Mobile = connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);

      NetworkInfo Wifi = connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);

      if (Mobile.getState().equals(State.DISCONNECTED)

      && Wifi.getState().equals(State.DISCONNECTED)) {

      return false;

      }

      return true;

      }

      }

      public class MyBinder extends Binder {

      public ReceiveMsgService getService() {

      return ReceiveMsgService.this;

      }

      }

      @Override

      public void onDestroy() {

      super.onDestroy();

      unregisterReceiver(mReceiver); // 删除广播

      }

      }

      接下来在Activity中,绑定服务

      private boolean conncetState = true; // 记录当前连接状态,因为广播会接收所有的网络状态改变wifi/3g等等,所以需要一个标志记录当前状态

      private ServiceConnection serviceConnection = new ServiceConnection() {

      @Override

      public void onServiceDisconnected(ComponentName name) {

      }

      @Override

      public void onServiceConnected(ComponentName name, IBinder service) {

      receiveMsgService = ((MyBinder) service).getService();

      receiveMsgService.setOnGetConnectState(new GetConnectState() { // 添加接口实例获取连接状态

      @Override

      public void GetState(boolean isConnected) {

      if (conncetState != isConnected) { // 如果当前连接状态与广播服务返回的状态不同才进行通知显示

      conncetState = isConnected;

      if (conncetState) {// 已连接

      handler.sendEmptyMessage(1);

      } else {// 未连接

      handler.sendEmptyMessage(2);

      }

      }

      }

      });

      }

      };

      在handler中处理连接状态改变之后的通知

      public class QunXHandler extends Handler {

      @Override

      public void handleMessage(Message msg) {

      super.handleMessage(msg);

      switch (msg.what) {case 1:// 已连接

      ...

      break;

      case 2:// 未连接

      title_tv.setText("群信(离线)");

      break;default:

      break;

      }

      }

      }


      当然也可以直接在Activity中注册一个广播,在接收到广播之后进行判断,这种情况就稍简单些,Activity可以直接访问到广播中的一些变量; 最后,需要添加一些权限:

    展开全文
  • ①本文档为微信小程序离线开发文档(完整版); ②详细、系统介绍了微信小程序开发相关的【简易教程】、【框架】、【组件】、【API】、【工具】、【腾讯云支持】; ③2018-05-02更新至基础库2.0.0; ④包含兼容基础...
  • HotApp云笔记, 是基于HotApp小程序统计云后台提供的api接口开发的一个微信小程序 2016-01-23 更新日志 1 重构统计代码hotapp.js, 用户不需要写任何代码就可以使用统计功能, 使用起来更方便 2016-01-03 更新日志 1 ...
  • 微信小程序开发系列教程 微信小程序开发系列一:微信小程序的申请和开发环境的搭建 微信小程序开发系列二:微信小程序的视图设计 这个教程的前两篇文章,介绍了如何用下图所示的微信开发者工具自动生成一个...

    微信小程序开发系列教程

    微信小程序开发系列一:微信小程序的申请和开发环境的搭建

    微信小程序开发系列二:微信小程序的视图设计

    这个教程的前两篇文章,介绍了如何用下图所示的微信开发者工具自动生成一个Hello World的微信小程序,并讲解了这个自动生成的微信小程序的视图开发原理。

    这个系列的下一步,会继续介绍这个微信小程序的控制器index.js的实现。在上一篇微信小程序视图源代码的讲解里,我们通过逐行讲解代码的方式,介绍了微信小程序视图的基本开发思路。但是讲控制器index.js, 仅仅采取静态的代码走查还不够,我们需要将微信小程序启动起来,通过单步调试的方式逐行讲解,通过控制器的调用上下文能对微信小程序的控制器实现有更深入的了解。

    为此我们先要学会微信小程序的调试方法。

    打开微信开发者工具,点击工具栏的“调试器”按钮:

    开发者工具右边的区域现在从上到下一分为二:上面蓝色区域还是代码编辑页面,下面红色区域就是微信小程序的调试工具。

    做过前端开发的朋友们,可以一眼就看出这其实就是Chrome的开发者工具。

    我在我的微信公众号“汪子熙”上也写过一篇Chrome开发者工具的使用技巧介绍,感兴趣的朋友可以去看看:

    链接如下:https://mp.weixin.qq.com/s?__biz=MzI3MDE4MjM5Mg==&mid=2247484306&idx=1&sn=314d749da91a94064ef1e258657a0974&chksm=ead5b105dda23813addbca28689e3fcc22c0b47cb2d4f49557ec796edfa8fe88c43d2c70567a#rd

    在调试器里打开我们的控制器index.js, 单击行号"3", 然后行号3自动被高亮,说明第3行已经成功设置好了一个断点。

    点击“编译”按钮,我们的小程序自动启动,设置在控制器里的断点就自动触发了。这样我们就可以通过单步调试的方式来学习微信小程序控制器的调用上下文了。

    微信小程序的调试器在手机上仍然可以打开。在手机上访问微信小程序,点击屏幕右下角的vConsole按钮。

    接着整个手机屏幕就被微信小程序的调试器充满了。这个调试器和电脑上安装的微信开发者工具相比,仅仅能显示日志和执行一些简单的JavaScript操作,但是不能像电脑上那样,进行JavaScript代码的调试。

    我们注意到上图的“command…”输入框可以输入一些简单的JavaScript命令,比如console.log(“Jerry”)。

    然后可以在手机的调试器上看到输出的Jerry:

    System标签页可以看到一些微信小程序性能相关的参数和性能参数:

    MicroMessenger版本号:6.6.6

    Wechat lib: 库文件版本2.0.9

    navigation: 3ms 跳转时间3毫秒

    domComplete(domLoaded): dom加载总共花费19毫秒

    WXML标签页能显示当前渲染好的视图的明细:

    大家熟悉了微信小程序的调试器,就能开始下一章节关于微信小程序控制器的学习了。

    要获取更多Jerry的原创技术文章,请关注公众号"汪子熙"或者扫描下面二维码:

    展开全文
  • 第一天,认识微信小程序,第一个微信小程序 1.什么是微信小程序? 是h5网页嘛?不是 微信张小龙说: 小程序是一种不需要下载安装即可使用的应用, 它实现了应用“触手可及”的梦想,用户扫一扫或者 搜一下即可...
    第一天,认识微信小程序,第一个微信小程序
    


    1.什么是微信小程序?
    是h5网页嘛?不是
    微信张小龙说:
    小程序是一种不需要下载安装即可使用的应用,
    它实现了应用“触手可及”的梦想,用户扫一扫或者
    搜一下即可打开应用。也体现了“用完即走”的理念
    ,用户不用关心安装太多应用的问题。应用将无
    处不在,所示可用,但又无需安装卸载。


    微信小程序存在云端对吧.


    手机app:一般是native程序,比如用java或ios写的
    对吧:需要下载,但是小程序不需要下载.


    app分为:
    webapp:网页的应用
    native app:用java和ios编写对吧
    react web:
    hybrid:


    微信小程序:他是微信发明了一种语言
    比如他用wxm代替css对吧.


    咱们再总结一下看看:
    微信小程序是一种:
    web的开发方式,但是是native app的开发体验.


    不是HTML5
    • 即用即走,随手可得
    • 拥有离线能力:h5的离线存储功能,联网的时候可以
                   看到页面,离线的时候也可以看到.
                   有离线存储功能.


          联网的时候把页面存储在手机端.


    • 一次开发,多端兼容,比如微信的Android/ios:
                        上都可以应用这个小程序.
                        
       怎么做到的呢?微信的sdk封装了.
    • 优美的操作体验:
      h5的体验不是那么好,特别跟native相比较
      小程序的体验,要比h5不错.


      因为他用一些native框架渲染的.
    -----------------------------------------
    2.环境安装
    下载
    https://mp.weixin.qq.com/debug/wxadoc/dev/devt
    ools/download.html?t=20161122


    下载安装以后,用微信扫一下才能进入.


    进入以后选择:本地小程序项目


    • 选择对应的系统(win32,win64,mac)安装
    • 开发工具:自带,sublime Text
                自带就是(微信提供的这个对吧)
    • 小程序的插件安装 
      https://github.com/tc-h5/tc-weapp-snippets
      这个是一个基于sublime的一个小程序的插件
      好,进去点击右边:clone or download
      这样就可以了.选择downloadZIP
      tc-weapp-snippets-master.zip
    好下载以后,咱们怎么用?
    咱们看看.


    1.首先解压得到:tc-weapp-snippets-master
    这个文件夹.然后把这个文件夹放到
    C:\Users\Administrator\AppData\Roaming\Sublime Text 2\Packages'
    这个文件夹的路径你可以,打开sublime然后在菜单上
    找到preferences-->browser packages
    就可以找到这个目录了-->然后选择user目录.
    C:\Users\Administrator\AppData\Roaming\Sublime Text 2\Packages\User
    2.把解压得到:tc-weapp-snippets-master的文件夹
      放到打开的user文件夹中去.
    3.这些是sublime的插件,里面都是有什么呢?
      有小程序提供的一些api,还有一些组件.


    3.第一个微信小程序
    a.点击微信开发工具,然后点击添加项目,
      然后选择填入一个appid,但如果没有appid的话,
      也可以点击右边的无appid,但是提示部分功能受限
      对吧.
    b.如何获取appid:
      去官网:
      https://mp.weixin.qq.com/debug/wxadoc/dev/?t=2017112
      简易教程-->有介绍如何获得appid
      登录微信:
      https://mp.weixin.qq.com/


      开发者中心,设置里,注意,服务号,可以直接看到
      订阅号,只有认证以后可以看到.坑...
    -----------------------------
    好看看如何开发:
    1.好,咱们填写一下项目名称:
    credemo01
    2.然后选择保存目录
    3.然后选择添加项目
    打开界面:
    左侧是ui,右侧是代码部分
    好,咱们左侧选择编辑,右侧会出现代码编辑窗口,还有代码文件列表
    对吧.不过这个编辑器,好像不如咱们的sublime好用,所以
    还是建议大家用sublime开发.


    左侧还有调试窗口.
    好左侧的ui,可以选择,比如iPhone6..等等.
    右侧,有wifi,还有2g/3g/4g..这个可以模拟网络情况对吧,测试不同
    网络情况下,咱们的项目表现情况.


    左侧的项目窗口:
    点击打开可以显示开发目录.
    下面会有:开启es6转es5:默认勾选
    监听文件变化,自动刷新开发者工具,这个很重要要勾选
    开发环境不校验请求域名以及TLS版本,这个勾选
    ---------------------------
    监听文件变化,自动刷新开发者工具:对于这一项咱们测试一下:
    点击左侧编辑,点击右侧代码文件目录,选择pages/index.js/
    修改里面的hello world 删掉d以后,保存,可以看到他就自动刷新了
    对吧.
    --------------------------
    好,开发工具咱们看到这里,然后咱们看看如何用sublime开发
    微信小程序,好,用sublime打开,刚刚用微信开发工具新建的
    项目,比如:
    sublime--->open folder-->找到E:\wxworkspace\credemo01
    这个文件夹打开.


    好,咱们打开,找到左侧目录,打开pages-->index.js-->修改内容,helloworld
    改成-->创梦,永不停息,保存,回到小程序开发工具界面,可以看到
    也跟着被改了对吧,所以咱们可以用sublime开发,在微信开发工具中看
    效果.


    好,介绍一下左侧文件结构:
    app.js是写逻辑的
    app.json是配置文件
    app.wxss是小程序的样式表


    好,咱们改改试试:
    比如修改:
    app.wxss:
    /**app.wxss**/
    .container {
      height: 100%;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: space-between;
      padding: 200rpx 0;
      //修改一下
      //padding: 200rpx 0;-->padding: 0rpx 0;
      box-sizing: border-box;

    看看效果,开发工具的左侧ui的头像上去了对吧.
    ---------------------------------
    好,大家注意:
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: space-between;
      以上三个在css中是没有的,他是微信小程序特有的,叫弹性和布局
      后边说.flex布局.


      padding: 200rpx 0;//rpx单位,后面说


    支付宝是不是也有小程序了?还没有哈,不过原理掌握了到时候他出
    其他的也不在话下.
    --------------------------------------------------
    好,咱们看看在sublime中打开,app.js
    在里面我输入wxapp,回车,就会自动生成代码,这个就是
    咱们刚开始装的插件的作用:
    App({
        onLaunch: function () {
          
        },
        onShow: function () {
            
        },
        onHide: function () {
            
        },
        globalData: 'I am global data'
      });
    这段代码对吧.这些代码是神意思呢?
    生命周期对吧,咱们后边讲.
    ----------------------------------
    这里我在app.js中敲入wxpage回车,也有生成很多代码对吧.
    Page({
      data:{
        
      },
      onLoad:function(options){
        
      },
      onReady:function(){
        
      },
      onShow:function(){
        
      },
      onHide:function(){
        
      },
      onUnload:function(){
        
      },
      onPullDownRefresh:function(){
        
      },
      onReachBottom:function(){
        
      }
    }) 
    --------------------------------
    好,左侧的utils/util.js是小程序的工具集


    左侧pages是页面对吧.


    好,咱们怎么用util.js中的方法呢?
    比如,我打开pages/logs/logs.js
    咱们看看:
    //logs.js
    var util = require('../../utils/util.js')//1.引入工具集
    Page({
      data: {
        logs: []
      },
      onLoad: function () {
        this.setData({
          logs: (wx.getStorageSync('logs') || []).map(function (log) {
            return util.formatTime(new Date(log))
    //1.util.formatTime(new Date(log))
    //uitl.用点的方式使用工具集
          })
        })
      }
    })
    --------------------------------
    好,注意,咱们在sublime中写的代码和微信开发工具中的代码是不一样的
    比如:
    credemo01/utils/util.js
    sublime显示的:
    function formatTime(date) {
      var year = date.getFullYear()
      var month = date.getMonth() + 1
      var day = date.getDate()


      var hour = date.getHours()
      var minute = date.getMinutes()
      var second = date.getSeconds()




      return [year, month, day].map(formatNumber).join('/') + ' ' + [hour, minute, second].map(formatNumber).join(':')
    }


    function formatNumber(n) {
      n = n.toString()
      return n[1] ? n : '0' + n
    }


    module.exports = {
      formatTime: formatTime
    }


    微信开发工具中显示的:
    好,咱们点击左侧调试,然后右边窗口的source,打开
    找到util.js咱们打开看看:


    //1.可以看到这是编译后的代码,他给添加了这样一句对吧
    //
    define("utils/util.js", function(require, module, exports, window,document,frames,self,location,navigator,localStorage,history,Caches,screen,alert,confirm,prompt,fetch,XMLHttpRequest,WebSocket,webkit,WeixinJSCore,WeixinJSBridge,Reporter){ 'use strict';


    function formatTime(date) {
      var year = date.getFullYear();
      var month = date.getMonth() + 1;
      var day = date.getDate();


      var hour = date.getHours();
      var minute = date.getMinutes();
      var second = date.getSeconds();


      return [year, month, day].map(formatNumber).join('/') + ' ' + [hour, minute, second].map(formatNumber).join(':');
    }


    function formatNumber(n) {
      n = n.toString();
      return n[1] ? n : '0' + n;
    }


    module.exports = {
      formatTime: formatTime
    };
    //2.还有这里
    //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInV0aWwuanMiXSwibmFtZXMiOlsiZm9ybWF0VGltZSIsImRhdGUiLCJ5ZWFyIiwiZ2V0RnVsbFllYXIiLCJtb250aCIsImdldE1vbnRoIiwiZGF5IiwiZ2V0RGF0ZSIsImhvdXIiLCJnZXRIb3VycyIsIm1pbnV0ZSIsImdldE1pbnV0ZXMiLCJzZWNvbmQiLCJnZXRTZWNvbmRzIiwibWFwIiwiZm9ybWF0TnVtYmVyIiwiam9pbiIsIm4iLCJ0b1N0cmluZyIsIm1vZHVsZSIsImV4cG9ydHMiXSwibWFwcGluZ3MiOiI7O0FBQUEsU0FBU0EsVUFBVCxDQUFvQkMsSUFBcEIsRUFBMEI7QUFDeEIsTUFBSUMsT0FBT0QsS0FBS0UsV0FBTCxFQUFYO0FBQ0EsTUFBSUMsUUFBUUgsS0FBS0ksUUFBTCxLQUFrQixDQUE5QjtBQUNBLE1BQUlDLE1BQU1MLEtBQUtNLE9BQUwsRUFBVjs7QUFFQSxNQUFJQyxPQUFPUCxLQUFLUSxRQUFMLEVBQVg7QUFDQSxNQUFJQyxTQUFTVCxLQUFLVSxVQUFMLEVBQWI7QUFDQSxNQUFJQyxTQUFTWCxLQUFLWSxVQUFMLEVBQWI7O0FBR0EsU0FBTyxDQUFDWCxJQUFELEVBQU9FLEtBQVAsRUFBY0UsR0FBZCxFQUFtQlEsR0FBbkIsQ0FBdUJDLFlBQXZCLEVBQXFDQyxJQUFyQyxDQUEwQyxHQUExQyxJQUFpRCxHQUFqRCxHQUF1RCxDQUFDUixJQUFELEVBQU9FLE1BQVAsRUFBZUUsTUFBZixFQUF1QkUsR0FBdkIsQ0FBMkJDLFlBQTNCLEVBQXlDQyxJQUF6QyxDQUE4QyxHQUE5QyxDQUE5RDtBQUNEOztBQUVELFNBQVNELFlBQVQsQ0FBc0JFLENBQXRCLEVBQXlCO0FBQ3ZCQSxNQUFJQSxFQUFFQyxRQUFGLEVBQUo7QUFDQSxTQUFPRCxFQUFFLENBQUYsSUFBT0EsQ0FBUCxHQUFXLE1BQU1BLENBQXhCO0FBQ0Q7O0FBRURFLE9BQU9DLE9BQVAsR0FBaUI7QUFDZnBCLGNBQVlBO0FBREcsQ0FBakIiLCJmaWxlIjoidW5rbm93biIsInNvdXJjZXNDb250ZW50IjpbImZ1bmN0aW9uIGZvcm1hdFRpbWUoZGF0ZSkge1xuICB2YXIgeWVhciA9IGRhdGUuZ2V0RnVsbFllYXIoKVxuICB2YXIgbW9udGggPSBkYXRlLmdldE1vbnRoKCkgKyAxXG4gIHZhciBkYXkgPSBkYXRlLmdldERhdGUoKVxuXG4gIHZhciBob3VyID0gZGF0ZS5nZXRIb3VycygpXG4gIHZhciBtaW51dGUgPSBkYXRlLmdldE1pbnV0ZXMoKVxuICB2YXIgc2Vjb25kID0gZGF0ZS5nZXRTZWNvbmRzKClcblxuXG4gIHJldHVybiBbeWVhciwgbW9udGgsIGRheV0ubWFwKGZvcm1hdE51bWJlcikuam9pbignLycpICsgJyAnICsgW2hvdXIsIG1pbnV0ZSwgc2Vjb25kXS5tYXAoZm9ybWF0TnVtYmVyKS5qb2luKCc6Jylcbn1cblxuZnVuY3Rpb24gZm9ybWF0TnVtYmVyKG4pIHtcbiAgbiA9IG4udG9TdHJpbmcoKVxuICByZXR1cm4gblsxXSA/IG4gOiAnMCcgKyBuXG59XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBmb3JtYXRUaW1lOiBmb3JtYXRUaW1lXG59XG4iXX0=
    });


    其实sublime中显示的编译之前的,咱们要注意sublime和微信开发工具中
    编译后的代码是不一样的对吧.


    而且注意,结构好像也不一样了:
    比如:sublime中结构:
    credemo01
      pages
        index
          index.js
          index.wxml
          index.wxss
      logs
          logs.js
          logs.json
          logs.wxml
          logs.wxss
      utils
          util.js
     app.js
     app.json
     app.wxss
    ---------------------
    而微信开发工具的结构是:
    注意先选择左侧的编译:
    pages
      index
        index.js
        index.js[sm]
      logs
        logs.js
        logs.js[sm]
      utils
        util.js
        util.js[sm]
      appservice
      WAService.js
      app.js[sm]
      asdebug.js
    这样的对吧,这是编译后的代码,咱们看跟sublime中的是不一样的.
    -------------------------------
    好,咱们回过来看:
    app.json


    {
      "pages":[
        "pages/index/index",
        "pages/logs/logs"
      ],
      "window":{
        "backgroundTextStyle":"light",
        "navigationBarBackgroundColor": "#fff",
        "navigationBarTitleText": "WeChat",//1.这里指定的是界面
        //上的标题,可以修改保存下试试:
        //WeChat-->WeChat123
        "navigationBarTextStyle":"black"
      }
    }


    可以看到变了对吧WeChat123
    --------------------------------
    再看看:
    pages/index/index.js
    //index.js
    //获取应用实例
    var app = getApp()
    Page({
      data: {
        motto: '创梦,永不停息',
        //1.motto: '创梦,永不停息',
        //改成text: '创梦,永不停息',
        userInfo: {}
      },
      //事件处理函数
      bindViewTap: function() {
        wx.navigateTo({
          url: '../logs/logs'
        })
      },
      onLoad: function () {
        console.log('onLoad')
        var that = this
        //调用应用实例的方法获取全局数据
        app.getUserInfo(function(userInfo){
          //更新数据
          that.setData({
            userInfo:userInfo
          })
        })
      }
    })
    ----------------------------------
    pages/index/index.wxml
    <!--index.wxml-->
    <view class="container">
      <view  bindtap="bindViewTap" class="userinfo">
        <image class="userinfo-avatar" src="{{userInfo.avatarUrl}}" background-size="cover"></image>
        <text class="userinfo-nickname">{{userInfo.nickName}}</text>
      </view>
      <view class="usermotto">
        <text class="user-motto">{{text}}</text>
        //2.<text class="user-motto">{{motto}}</text>
        //改成:
        //  <text class="user-motto">{{text}}</text>
        //可以看到也可以对吧.
        //这两个地方是对应起来的.
        //
      </view>
    </view>
    -------------------------------------------
    再比如:
    app.json
    {
      "pages":[
        "pages/index/index",
        "pages/logs/logs"
      ],
      "window":{
        "backgroundTextStyle":"light",
        "navigationBarBackgroundColor": "#fff",
        //1.修改一下背景颜色
        //"navigationBarBackgroundColor": "#fff",-->
        //"navigationBarBackgroundColor": "#dfdfdf",
        //看看有效果了对吧.
        //在sublime中改,在微信开发工具中效果
        //
        "navigationBarTitleText": "WeChat",
        "navigationBarTextStyle":"black"
      }
    }
    ---------------------------------
    再看我改改标题:
    app.json
    {
      "pages":[
        "pages/index/index",
        "pages/logs/logs"
      ],
      "window":{
        "backgroundTextStyle":"light",
        "navigationBarBackgroundColor": "#fff",
        "navigationBarTitleText": "第一个微信小程序",
        "navigationBarTextStyle":"black"
      }
    }


    看看效果
    ----------------------------------------------------
    字体颜色改改:
    app.json
    {
      "pages":[
        "pages/index/index",
        "pages/logs/logs"
      ],
      "window":{
        "backgroundTextStyle":"light",
        "navigationBarBackgroundColor": "#fff",
        "navigationBarTitleText": "第一个微信小程序",
        "navigationBarTextStyle":"black"
        //1."navigationBarTextStyle":"black"
        //-->"navigationBarTextStyle":"blue"蓝色
      }
    }
    ----------------------------

    展开全文
  • 微信小程序的推出,在移动互联网行业里掀起的风浪的在持续。给很多创业者和中小企业带来了真正的春天。千亿市场已经开启,巨大商机正在潜伏。千万别低估了微信小程序其实仔细想想,当时微信官方提出微信应用号(小...
  •  微信小程序客服消息功能是一个很不错的沟通功能!   随着微信小程序在2018年,越来越火,大家对这一块的需求也明显增加,本期我们来谈谈微信上小程序客服功能上的一些想法! 为丰富小程序的服务能力,提高服务...
  • 在没有网络连接的情况下,微信公众号的功能无法使用,但微信小程序而言,只要小程序本身无需联网的工作,它能够在离线的情况下发挥作用。 服务号与在微信中加载一般网页相比,小程序的加载十分快捷,
  • 本套课程出自老男孩IT教程的Python+微信小程序开发实战官网售价79元,课程基于微信小程序平台开发的的拍卖系统。课程分为4个章节微信小程序快速入门用微信小程序快速开发认证和发布动态模块,第二章拍卖平台动态管理...
  • 微信小程序背单词

    2018-12-07 11:07:16
    微信小程序,英语单词小工具,离线版,集成1000常用词。也是一个学习小程序语音控件的好版本
  • 微信小程序初学

    2019-04-10 15:47:42
    解决了移动网页能力不足的问题,通过暴露微信更多的接口使得开发时拥有更多的API,但是在体验上还是存在不足,在用户打开小程序页面时,会出现一段时间的白屏,而这个白屏的时间取决于设备性能和网络速度。所以微信...
  • 文章目录零、学习目标一、小程序的历史二、如何访问小程序1、线下扫码2、微信搜索3、公众号关联4、好友推荐5、历史记录6、桌面访问7、附近的小程序三、小程序与HTML5和APP比较四、小程序与订阅号、服务号、企业号的...
  • 微信小程序】微信开发文档摘要

    千次阅读 2020-05-01 11:18:29
    此篇文章用于微信小程序的开发文档摘要,主要记录概念性的,或者说理解性的东西,对于那些硬性代码,反而不做太多汇总。 一、微信小程序简介 小程序是一种全新的连接用户与服务的方式,它可以在微信内被便捷地获取和...
  • 由于5+已经停止更新了,官方的虽然有跳转小程序的方法,但是试了几个离线包都不成功,安卓倒是一次成功了,附上hbuilder文档调用微信小程序xie
  • 微信小程序

    2019-09-29 21:39:15
    微信小程序: 小程序是一种新的开放能力,开发者可以快速地开发一个小程序。小程序可以在微信内被便捷地获取和传播,同时具有出色的使用体验。 微信公众号和小程序的主要区别? 1、定位不同(公众号服务于营销与...
  • 移动端商城(微信小程序源代码)(上传者:腾讯攻城师jack)功能包括:商品橱窗,商品搜索,购物车,结账等功能.TableView嵌套webView自适应高度(上传者:linlinchen)tableView嵌套多个webView自适应高度,高度获取较...
  • 微信小程序构架全解

    2021-03-29 20:00:22
    很多人应该已经尝试了微信小程序,我也抱着学习的态度,准备研究一下。研究之后感觉还可以,如果有h5和angular(或vue)基础的话,入门还是比较容易的。 小程序是一种不需要下载安装即可使用的应用,他实现了应用...
  • 小程序技术发展史 ​小程序并非凭空冒出来的一个概念。当微信中的 WebView 逐渐成为移动 Web 的一个重要入口时,微信就有相关的 JS API 了。 微信官方没有对外暴露过如此调用的,此类 API 最初是提供给腾讯内部一些...
  • 微信小程序采用的是类似离线包加载方案,以 转转 小程序为例,当用户第一次打开时会先下载好所有代码,然后再加载页面;当用户再次进入转转小程序时,会直接使用已下载的代码,省去了代码下载的过程,打开速度更快...
  • 微信小程序 map地图

    千次阅读 2018-09-24 17:26:28
    接下来博主将会为大家给讲解微信小程序,map地图相关的东西,最后附上源码 以下是微信小程序项目源码:点击可以进入gitee直接下载源码包喔 微信小程序演示程序 版权所有,禁止转载,违者必究。 喜欢的朋友可以...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 9,723
精华内容 3,889
关键字:

微信小程序离线

微信小程序 订阅