精华内容
下载资源
问答
  • 微信小程序中设置localstorage--wx.setStorage
    万次阅读
    2018-12-18 17:18:00

    初心-杨瑞超个人博客诚邀您加入qq群(IT-程序猿-技术交流群):757345416

    将数据存储在本地缓存中指定的 key 中。会覆盖掉原来该 key 对应的内容。数据存储生命周期跟小程序本身一致,即除用户主动删除或超过一定时间被自动清理,否则数据都一直可用。单个 key 允许存储的最大数据长度为 1MB,所有数据存储上限为 10MB。

    代码示例:

    wx.setStorage({
      key: 'key',
      data: 'value'
    })
    

    具体api详见官网文档

    更多相关内容
  • 需求是两张图片在这个时间段内交替显示,当天只弹一次图片。 后端返回的数据格式: { start: 2019/10/08 00:00:00, ...小程序中缓存没有过期时间,也就是说存储进去的缓存要自己手动清除,那么如
  • 正文: // util.js //时间戳转换成日期时间 function js_date_time(unixtime) { var dateTime = new Date(parseInt(unixtime) * 1000) var year = dateTime.getFullYear(); var month = dateTime.getMonth() + 1...
  • 随着小程序的热度不减,更多的电商大佬来时使用小程序,在微信小程序开发中,经常会遇到一些兼容性的问题,下面这篇文章就记录下在微信小程序中遇到的一些兼容性问题,iOS兼容性 1.iOS中input的placeholder属性字体...
  • 1. 简述微信小程序的运行机制 热启动 :假如⽤户已经打开了某个⼩程序,在⼀定时间内再次打开⼩程序的话,这个时候我们就不再需要重新启动了,只需要把我们的后台打开的⼩程序切换到前台来使⽤。 冷启动:⽤户⾸次...

    1. 简述微信小程序的运行机制

    热启动 :假如⽤户已经打开了某个⼩程序,在⼀定时间内再次打开⼩程序的话,这个时候我们就不再需要重新启动了,只需要把我们的后台打开的⼩程序切换到前台来使⽤。
    冷启动:⽤户⾸次打开⼩程序或被微信主动销毁再次打开的情况,此时⼩程序需要重新加载启动。

    2. 分析一下小程序的优劣势

    优势:

    1. 无需下载,通过搜索和扫一扫就可以打开

    2. 打开速度快

    3. 开发成本比App要低

    4. 安卓上可以添加到桌面,与原生App差不多

    5. 为用户提供良好的安全保障。

    劣势:

    1. 限制较多。

    2. 样式单一。

    3. 推广面窄,不能分享朋友圈,

    4. 依托于微信,无法开发后台管理功能

    3. 简单描述下微信小程序的相关文件类型

    微信小程序项目结构主要有四个文件类型,如下:

    1.WXML可以构建出页面的结构
    2.WXSS 是一套样式语言,用于描述 WXML 的组件样式-
    3.js逻辑处理,网络请求
    4.json小程序配置文件
    5.app.json作为配置文件入口,整个小程序的全局配置。
    6.app.js入口文件
    7.app.wxss全局页面样式设置,在app.wxss中设置的样式可以在小程序的所有页面生效

    4. 请谈谈小程序的生命周期函数

    • onLoad():页面加载时触发

    • onShow():页面显示/切入前台时触发

    • onReady():页面初次渲染完成时触发

    • onHide():页面隐藏/切入后台时触发

    • onUnload():页面卸载时触发

    • onPullDownRefresh():下拉刷新的钩子函数

    • onReachBottom():上翻到底的钩子函数

    5. 请谈谈小程序的组件生命周期函数

    • created():组件实例刚刚被创建好时触发。

    • attached():在组件完全初始化完毕、进入页面节点树后触发。

    • detached() 组件离开页面节点树后触发。

    6. 微信小程序中的路由及其区别

    // wx.navigateTo():保留当前页面,跳转到应用内的某个页面。但是不能跳到 tabbar 页面 
    ​
    // wx.redirectTo():关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面 
    ​
    // wx.switchTab():跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面 
    ​
    // wx.navigateBack()关闭当前页面,返回上一页面或多级页面。可通过 getCurrentPages() 获取当前的页面栈,决定需要返回几层 
    ​
    // wx.reLaunch():关闭所有页面,打开到应用内的某个页面

    7. 说出小程序当中常用的UI组件

    • 视图容器组件:viewswiperswiper-item

    • 基础内容组件:texticonrich-text

    • 表单组件:buttonform checkboxinput

    • 导航组件:navigator

    • 媒体组件:image

    8. 谈一谈你对wxs的理解

    • 概念:wxs(WeiXin Script)是小程序的一套脚本语言,结合 WXML,可以构建出页面的结构

    • 特点:

      • 没有兼容性

      • 与JavaScript不同

      • 隔离性

        不能作为事件回调

      • ios设备上比javascript运行快

      • wxs遵循CommonJs模块化规范

    • 支持的数据类型:

      • number:数值类型

      • string:字符串类型

      • boolean:布尔类型

      • object:对象类型

      • function:函数类型

      • array:数组类型

      • date:日期类型

      • regexp:正则

    9. 简述一下wx:if和hidden的区别

    1.`wx:if `动态创建或销毁对应的UI结构
    2.`wx:if `条件为 false,什么也不做;为true时,才开始局部渲染
    3.`hidden `简单的控制组件的显示与隐藏
    4.`wx:if `有更高的切换消耗而 `hidden `有更高的初始渲染消耗。频繁切换的情况下,用 `hidden `更好,运行时条件不大可能改变则 `wx:if` 较好。

    10. 说出小程序中父子组件通信的三种方式

    • 属性绑定:用于父组件向子组件的指定属性设置数据,仅能设置 JSON 兼容的数据

    • 事件绑定:用于子组件向父组件传递数据,可以传递任意数据

    • 获取组件实例:父组件还可以通过this.selectComponent() 获取子组件实例对象,这样就可以直接访问子组件的任意数据和方法

    11. 什么是分包加载,如何使用分包加载

    1. 1.概念 减少首屏加载时间,用户在使用时按需进行加载
      2.使用
          1. 在app.json中配置项目分包结构
          2. 配置`subpackages`属性
              subpackages: {
                  "root": "分包的根目录",
                  "pages": [""] // 需要按需加载的包所在路径
              }

    12. 小程序中如何自定义组件

    1. 在根目录新建一个components文件夹,然后在这个文件夹下放置自定义的组件

    2. 需要用到某个自定义组件时,就在它里面的json文件中配置 "component": true

    3. 在父组件的json文件中的usingComponents中导入这个组件

      usingComponents: {
          "自定义组件名": "自定义组件所在路径"
      }

    13. 小程序中如何自定义tabBar

    1. app.json 中的 tabBar 项指定 custom 字段

    2. 在所有 tab 页的 json 里声明 usingComponents 项,或者在 app.json 中全局开启

    3. 在代码根目录下创建custom-tab-bar文件夹,里面放自定义的tabBar文件

    4. 编写tabBar代码

    14. ⼩程序WXSS与CSS 的区别

    wxss 背景图⽚只能引⼊外链,不能使⽤本地图⽚

    ⼩程序样式使⽤ @import 引⼊ 外联样式⽂件,地址为相对路径。

    尺⼨单位为 rpx , rpx 是响应式像素,可以根据屏幕宽度进⾏⾃适应。

    15. ⼩程序的双向绑定和Vue哪⾥不⼀样?

    ⼩程序 直接使⽤this.data.key = value 是 不能更新到视图当中的。必须使⽤ this.setData({ key :value }) 来更新值

    16. 在wepy中如何将异步API promise化

    1. 下载模块@wepy/use-promisify

      npm i @wepy/use-promisify0
    2. 在app.wpy中引入该模块

      import promisify from '@wepy/use-promisify'
    3. 在app.wpy中,将promisify方法挂载到wepy上

      wepy.use(promisify)
    4. 使用

      wepy.wx.request('url地址')

    17. ⼩程序怎么实现下拉刷新

    两种⽅案

    ⽅案 ⼀ :

    通过在 app.json 中, 将 "enablePullDownRefresh": true, 开启全局下拉刷新。

    或者通过在 组件 .json , 将 "enablePullDownRefresh": true, 单组件下拉刷新。

    ⽅案⼆:

    scroll-view :使⽤该滚动组件 ⾃定义刷新,通过 bindscrolltoupper 属性, 当滚动到顶部/左边,会触发 scrolltoupper事件,所以我们可以利⽤这个属性,来实现下拉刷新功能。

    18. 使用wepy框架初始化项目的步骤

    1. 下载项目模板

      npm i standard 项目名(mypro)
    2. 进入到项目目录

      cd mypro
    3. 下载依赖

      npm i
    4. 运行项目

      npm run dev

    19. bindtap和catchtap区别

    相同点: 都是点击事件

    不同点: bindtap 不会阻⽌冒泡, catchtap 可以阻⽌冒泡。

    20. ⼩程序怎么跟随事件传值

    在 ⻚⾯标签上通过 绑定 dataset-key = value , 然后绑定点击通过e.currentTarget.dataset.key 来获取标签上绑定的值

    <button bindtap="get" data-name="测试"> 拿到传值</button> 
    
    get(e){ console.log(e.currentTarget.dataset.name) },

    21. uni-app的配置文件、入口文件、主组件、页面管理部分

    pages.json	配置文件
    main.js		入口文件
    App.vue		主组件
    pages		页面管理部分

    22. 如何封装⼩程序请求

    封装 wx.request 请求传递需要的参数( url , data , method , success 成功回调 , fail 失败回调 ) , 封装常⽤⽅法 POST , GET , DELETE , PUT .... 最后导出这些⽅法然后新建⼀个 api.js ⽂件,导⼊封装好的⽅法,然后调取相应的⽅法,传递数据。

    封装:

    var app = getApp(); //获取⼩程序全局唯⼀app实例
    var host = '******************'; //接⼝地址
    
    //POST请求
    function post(url, data, success,fail) 
    { 
        request(url, postData, "POST", doSuccesls, doFail);
    }
    //GET请求
    function get(url, data, success, fail) 
    { 
        request(url, postData, "GET", doSuccess, doFail);
    }
    function request(url, data, method, success, fail) 
    { 
        wx.showLoading({ title: "正在加载中...", }) 
        wx.request({
            url: host + url, //请求地址 
            method: method, //请求⽅法 
            header: { //请求头 
                "Content-Type": "application/json;charset=UTF-8" 
            },
         data: data, //请求参数  
         dataType: 'json', //返回数据格式 
         responseType: 'text', //响应的数据类型
         success: function(res) { //成功执⾏⽅法,参数值为res.data,直接将返回的数据传⼊ 
             wx.hideLoading(); 
             success(res.data); 
         },
         fail: function() { //失败执⾏⽅法 fail(); },
        })
     }
     module.exports = { postRequest: post, getRequest: get,}

    组件使⽤ 封装好的请求:

    var http = require('../../utils/request.js'); //相对路径  
    var params = {//请求参数 id:this.data.userId}
    http.postRequest("user/delUser", params, function(res) { console.log("修改成功!"); }, function(res) { console.log("修改失败!!!")})

    总结:

    在src目录中新建一个utils目录,在目录中新建一个request.js,在request.js中首先获取整个小程序的实例来保证能调用wx所有方法,定义get和post等请求的方法,然后在get或者post请求的方法中设置wx.showToast(),然后通过wx.request来实现get或者post请求,在success中,关闭loading,然后通过回调的形式返回拿到的数据

    调用:

    首先要导入包

    var http=require("../utils/request.js")

    在方法中通过http.get方法(参数,回调)来调用

    23. uniapp获取地理位置的API是什么?

    • uni.getLocation()

    24. ⼩程序有哪些传递数据的⽅法

      1. 使⽤全局变量在 app.js 中的 this.globalData = { } 中放⼊要存储的数据。在 组件.js 中, 头部 引⼊ const app = getApp(); 获取到全局变量直接使⽤ app.globalData.key 来进⾏赋值和获取值。

      2. 使⽤ 路由wx.navigateTo 和 wx.redirectTo 时,可以通过在 url 后 拼接 + 变量, 然后在 ⽬标⻚⾯ 通过在 onLoad 周期中,通过参数来获取传递过来的值。

      3. 使用本地存储

    25. 分别说出vue、小程序、uni-app中的本地存储数据和接受数据是什么

    • vue:

      • 存储:localstorage.setItem

      • 接收:localstorage.getItem

    • 微信小程序:

      • 存储:wx.setStorage/wx.setStorageSync

      • 接收:wx.getStorage/wx.getStorageSync

    • 5

    • uni-app:

      • 存储:uni.setStorage

      • 接收:uni.getStorage

    26.

    app.json全局配置⽂件描述

    pages : ⽤于存放当前⼩程序的所有⻚⾯路径

    window : ⼩程序所有⻚⾯的顶部背景颜⾊,⽂字颜⾊配置。

    tabBar : ⼩程序底部的 Tab ,最多5个,最少2个。

    27. uni-app如何监听页面滚动

    • 使用onPageScroll 监听

    28. 如何让图片宽度不变,高度自动变化,保持原图片宽高比不变

    • 给image标签添加 mode='widthFix'

    29. ⼩程序什么时候会主动销毁?

    ⼩程序在进⼊后台之后,客户端会帮我们在⼀定时间内维持我们的⼀个状态,超过五分钟后,会被微信主动销毁.官⽅也没有明确说明 什么时候销毁, 在不同机型表现也不⼀样,2019年开发时:时间官⽅⽂档没有说明,但是经过询问⼀般指5分钟内2020年开发时:时间官⽅⽂档没有说明,实测安卓没有固定时间,内存⾜够情况下,有时候⼀天了还在,有时候⼏分钟就没了

    30. uniapp进行条件编译的两种方法?小程序端和H5的代表值是什么?

    • 条件编译的两种方法

      • #ifdef

      • #ifndef

    • 小程序端和H5的代表值

      • H5:H5

      • MP-WEIXIN:微信小程序

    展开全文
  • 前端必定会用到的存储技术:localStorage、sessionStorage 这里不做深入讨论他们的优缺点,有需要...微信小程序中使用storage 本地存储 wx.setStorageSync("key", "value"); wx.getStorageSync("key"); 注意点 .

    前端必定会用到的存储技术:localStorage、sessionStorage

    这里不做深入讨论他们的优缺点,有需要请自行搜索相关博客~

    游览器(web)中使用storage 本地存储

    localStorage.setItem("key","value")
    
    localStorage.getItem("key")

    微信小程序中使用storage 本地存储

    wx.setStorageSync("key", "value"); 
    
    wx.getStorageSync("key");

     注意点

    在web端使用:不管存入的是什么类型的数据,最终都会先调用以下 toString(),把数据变成了字符串 再存入进去

    在小程序端使用:不存在类型转换的这个操作,存什么类似的数据进去,获取的时候就是什么类型 

    展开全文
  • 1. 简述微信小程序的运行机制 热启动 :假如⽤户已经打开了某个⼩程序,在⼀定时间内再次打开⼩程序的话,这个时候我们就不再需要重新启动了,这需要把我们的后台打开的⼩程序切换到前台来使⽤。 冷启动:⽤户⾸次...

    1. 简述微信小程序的运行机制

    热启动 :假如⽤户已经打开了某个⼩程序,在⼀定时间内再次打开⼩程序的话,这个时候我们就不再需要重新启动了,这需要把我们的后台打开的⼩程序切换到前台来使⽤。
    冷启动:⽤户⾸次打开⼩程序或被微信主动销毁再次打开的情况,此时⼩程序需要重新加载启动。

    2. 分析一下小程序的优劣势

    优势:

    1. 无需下载,通过搜索和扫一扫就可以打开

    2. 良好的用户体验:打开速度快

    3. 开发成本比App要低

    4. 安卓上可以添加到桌面,与原生App差不多

    5. 为用户提供良好的安全保障。

    劣势:

    1. 限制较多。

    2. 样式单一。

    3. 推广面窄,不能分享朋友圈,

    4. 依托于微信,无法开发后台管理功能

    3. 简单描述下微信小程序的相关文件类型

    微信小程序项目结构主要有四个文件类型,如下:

    1.WXML可以构建出页面的结构
    2.WXSS 是一套样式语言,用于描述 WXML 的组件样式
    3.js逻辑处理,网络请求
    4.json小程序配置文件
    5.app.json作为配置文件入口,整个小程序的全局配置。
    6.app.js必须要有这个文件,没有也是会报错
    7.app.wxss全局页面样式设置,在app.wxss中设置的样式可以在小程序的所有页面生效

    4. 请谈谈小程序的生命周期函数

    • onLoad():页面加载时触发

    • onShow():页面显示/切入前台时触发

    • onReady():页面初次渲染完成时触发

    • onHide():页面隐藏/切入后台时触发

    • onUnload():页面卸载时触发

    • onPullDownRefresh():下拉刷新的钩子函数

    • onReachBottom():上翻到底的钩子函数

    5. 请谈谈小程序的组件生命周期函数

    • created():组件实例刚刚被创建好时触发。

    • attached():在组件完全初始化完毕、进入页面节点树后触发。

    • detached() 组件离开页面节点树后触发。

    6. 微信小程序中的路由及其区别

    // wx.navigateTo():保留当前页面,跳转到应用内的某个页面。但是不能跳到 tabbar 页面 
    ​
    // wx.redirectTo():关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面 
    ​
    // wx.switchTab():跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面 
    ​
    // wx.navigateBack()关闭当前页面,返回上一页面或多级页面。可通过 getCurrentPages() 获取当前的页面栈,决定需要返回几层 
    ​
    // wx.reLaunch():关闭所有页面,打开到应用内的某个页面

    7. 说出小程序当中常用的UI组件

    • 视图容器组件:viewswiperswiper-item

    • 基础内容组件:texticonrich-text

    • 表单组件:buttonform checkboxinput

    • 导航组件:navigator

    • 媒体组件:image

    8. 谈一谈你对wxs的理解

    • 概念:wxs(WeiXin Script)是小程序的一套脚本语言,结合 WXML,可以构建出页面的结构

    • 特点:

      • 没有兼容性

      • 与JavaScript不同

      • 隔离性

        不能作为事件回调

      • ios设备上比javascript运行快

      • wxs遵循CommonJs模块化规范

    • 支持的数据类型:

      • number:数值类型

      • string:字符串类型

      • boolean:布尔类型

      • object:对象类型

      • function:函数类型

      • array:数组类型

      • date:日期类型

      • regexp:正则

    9. 简述一下wx:if和hidden的区别

    1.`wx:if `动态创建或销毁对应的UI结构
    2.`wx:if `条件为 false,什么也不做;为true时,才开始局部渲染
    3.`hidden `简单的控制组件的显示与隐藏
    4.`wx:if `有更高的切换消耗而 `hidden `有更高的初始渲染消耗。频繁切换的情况下,用 `hidden `更好,运行时条件不大可能改变则 `wx:if` 较好。

    10. 说出小程序中父子组件通信的三种方式

    • 属性绑定:用于父组件向子组件的指定属性设置数据,仅能设置 JSON 兼容的数据

    • 事件绑定:用于子组件向父组件传递数据,可以传递任意数据

    • 获取组件实例:父组件还可以通过this.selectComponent() 获取子组件实例对象,这样就可以直接访问子组件的任意数据和方法

    11. 什么是分包加载,如何使用分包加载

    1. 1.概念 减少首屏加载时间,用户在使用时按需进行加载
      2.使用
          1. 在app.json中配置项目分包结构
          2. 配置`subpackages`属性
              subpackages: {
                  "root": "分包的根目录",
                  "pages": [""] // 需要按需加载的包所在路径
              }

    12. 小程序中如何自定义组件

    1. 在根目录新建一个components文件夹,然后在这个文件夹下放置自定义的组件

    2. 需要用到某个自定义组件时,就在它里面的json文件中配置 "component": true

    3. 在父组件的json文件中的usingComponents中导入这个组件

      usingComponents: {
          "自定义组件名": "自定义组件所在路径"
      }

    13. 小程序中如何自定义tabBar

    1. app.json 中的 tabBar 项指定 custom 字段

    2. 在所有 tab 页的 json 里声明 usingComponents 项,或者在 app.json 中全局开启

    3. 在代码根目录下创建custom-tab-bar文件夹,里面放自定义的tabBar文件

    4. 编写tabBar代码

    14. ⼩程序WXSS与CSS 的区别

    wxss 背景图⽚只能引⼊外链,不能使⽤本地图⽚

    ⼩程序样式使⽤ @import 引⼊ 外联样式⽂件,地址为相对路径。

    尺⼨单位为 rpx , rpx 是响应式像素,可以根据屏幕宽度进⾏⾃适应。

    15. ⼩程序的双向绑定和Vue哪⾥不⼀样?

    ⼩程序 直接使⽤this.data.key = value 是不能更新到视图当中的。必须使⽤ this.setData({ key :value }) 来更新值

    16. 在wepy中如何将异步API promise化

    1. 下载模块@wepy/use-promisify

      npm i @wepy/use-promisify
    2. 在app.wpy中引入该模块

      import promisify from '@wepy/use-promisify'
    3. 在app.wpy中,将promisify方法挂载到wepy上

      wepy.use(promisify)
    4. 使用

      wepy.wx.request('url地址')

    17. ⼩程序怎么实现下拉刷新

    两种⽅案

    ⽅案 ⼀ :

    通过在 app.json 中, 将 "enablePullDownRefresh": true, 开启全局下拉刷新。

    或者通过在 组件 .json , 将 "enablePullDownRefresh": true, 单组件下拉刷新。

    ⽅案⼆:

    scroll-view :使⽤该滚动组件 ⾃定义刷新,通过 bindscrolltoupper 属性, 当滚动到顶部/左边,会触发 scrolltoupper事件,所以我们可以利⽤这个属性,来实现下拉刷新功能。

    18. 使用wepy框架初始化项目的步骤

    1. 下载项目模板

      npm i standard 项目名(mypro)
    2. 进入到项目目录

      cd mypro
    3. 下载依赖

      npm i
    4. 运行项目

      npm run dev

    19. bindtap和catchtap区别

    相同点: 都是点击事件

    不同点: bindtap 不会阻⽌冒泡, catchtap 可以阻⽌冒泡。

    20. ⼩程序怎么跟随事件传值

    在 ⻚⾯标签上通过 绑定 dataset-key = value , 然后绑定点击通过e.currentTarget.dataset.key 来获取标签上绑定的值

    <button bindtap="get" data-name="测试"> 拿到传值</button> 
    ​
    get(e){ console.log(e.currentTarget.dataset.name) },

    21. uni-app的配置文件、入口文件、主组件、页面管理部分

    pages.json  配置文件
    main.js     入口文件
    App.vue     主组件
    pages       页面管理部分

    22. 如何封装⼩程序请求

    封装 wx.request 请求传递需要的参数( url , data , method , success 成功回调 , fail 失败回调 ) , 封装常⽤⽅法 POST , GET , DELETE , PUT .... 最后导出这些⽅法然后新建⼀个 api.js ⽂件,导⼊封装好的⽅法,然后调取相应的⽅法,传递数据。

    封装:

    var app = getApp(); //获取⼩程序全局唯⼀app实例
    var host = '******************'; //接⼝地址
    ​
    //POST请求
    function post(url, data, success,fail) 
    { 
        request(url, postData, "POST", doSuccess, doFail);
    }
    //GET请求
    function get(url, data, success, fail) 
    { 
        request(url, postData, "GET", doSuccess, doFail);
    }
    function request(url, data, method, success, fail) 
    { 
        wx.showLoading({ title: "正在加载中...", }) 
        wx.request({
            url: host + url, //请求地址 
            method: method, //请求⽅法 
            header: { //请求头 
                "Content-Type": "application/json;charset=UTF-8" 
            },
         data: data, //请求参数  
         dataType: 'json', //返回数据格式 
         responseType: 'text', //响应的数据类型
         success: function(res) { //成功执⾏⽅法,参数值为res.data,直接将返回的数据传⼊ 
             wx.hideLoading(); 
             success(res.data); 
         },
         fail: function() { //失败执⾏⽅法 fail(); },
        })
     }
     module.exports = { postRequest: post, getRequest: get,}

    组件使⽤ 封装好的请求:

    var http = require('../../utils/request.js'); //相对路径  
    var params = {//请求参数 id:this.data.userId}
    http.postRequest("user/delUser", params, function(res) { console.log("修改成功!"); }, function(res) { console.log("修改失败!!!")})

    总结:

    在src目录中新建一个utils目录,在目录中新建一个request.js,在request.js中首先获取整个小程序的实例来保证能调用wx所有方法,定义get和post等请求的方法,然后在get或者post请求的方法中设置wx.showToast(),然后通过wx.request来实现get或者post请求,在success中,关闭loading,然后通过回调的形式返回拿到的数据

    调用:

    首先要导入包

    var http=require("../utils/request.js")

    在方法中通过http.get方法(参数,回调)来调用

    23. uniapp获取地理位置的API是什么?

    • uni.getLocation()

    24. ⼩程序有哪些传递数据的⽅法

    • 1.使⽤全局变量

      在 app.js 中的 this.globalData = { } 中放⼊要存储的数据。在 组件.js 中, 头部 引⼊ const app = getApp(); 获取到全局变量直接使⽤ app.globalData.key 来进⾏赋值和获取值。

      使⽤ 路由wx.navigateTo 和 wx.redirectTo 时,可以通过在 url 后 拼接 + 变量, 然后在 ⽬标⻚⾯ 通过在 onLoad 周期中,通过参数来获取传递过来的值。

      使用本地存储

    25. 分别说出vue、小程序、uni-app中的本地存储数据和接受数据是什么

    • vue:

      • 存储:localstorage.setItem

      • 接收:localstorage.getItem

    • 微信小程序:

      • 存储:wx.setStorage/wx.setStorageSync

      • 接收:wx.getStorage/wx.getStorageSync

    • uni-app:

      • 存储:uni.setStorage

      • 接收:uni.getStorage

    26. app.json全局配置⽂件描述

    pages : ⽤于存放当前⼩程序的所有⻚⾯路径

    window : ⼩程序所有⻚⾯的顶部背景颜⾊,⽂字颜⾊配置。

    tabBar : ⼩程序底部的 Tab ,最多5个,最少2个。

    27. uni-app如何监听页面滚动

    • 使用onPageScroll监听

    28. 如何让图片宽度不变,高度自动变化,保持原图片宽高比不变

    • 给image标签添加 mode='widthFix'

    29. ⼩程序什么时候会主动销毁?

    ⼩程序在进⼊后台之后,客户端会帮我们在⼀定时间内维持我们的⼀个状态,超过五分钟后,会被微信主动销毁.官⽅也没有明确说明 什么时候销毁, 在不同机型表现也不⼀样,2019年开发时:时间官⽅⽂档没有说明,但是经过询问⼀般指5分钟内2020年开发时:时间官⽅⽂档没有说明,实测安卓没有固定时间,内存⾜够情况下,有时候⼀天了还在,有时候⼏分钟就没了

    30. uniapp进行条件编译的两种方法?小程序端和H5的代表值是什么?

    • 条件编译的两种方法

      • #ifdef

      • #ifndef

    • 小程序端和H5的代表值

      • H5:H5

      • MP-WEIXIN:微信小程序

    展开全文
  • 封装的缓存功能,兼容网页,微信小程序,uni-app 使用,支持设置缓存,获取缓存,移除缓存,清空缓存,设置缓存时间,分组缓存设置。 把最下面的 Str4.js 代码拷贝到项目内可以直接使用,调用方式见下面的代码...
  • 微信小程序注册登录思路 (这是根据自身的项目的思路,不一定每个项目都适用) 1.制作授权登录框,引导用户点击按钮 2.uni.login获取code 3.把code传给后端接口,后端返回如下数据 openid: ogtVM5RWdfadfasdfadfadV5s ...
  • 关于本地缓存 ...2.localStorage 是永久存储 相应的api———- wx.setStorage(OBJECT) wx.getStorage(OBJECT) wx.getStorageInfo(OBJECT) wx.removeStorage(OBJECT) wx.setStorageSync(KEY,DATA) wx.g
  • @TOC微信小程序webview(安卓)兼容localStorage 和cookie 一.出现问题 最近一一个项目小程序webview页面使用到小程序穿过去的数据进行调用,在苹果的手机都是没有用问题的,一直好好的,后面测试拿来了国产的各大...
  • 微信小程序缓存

    2021-06-09 20:21:18
    微信小程序和web缓存的区别 ** web 的本地存储和小程序的本地存储的区别 * web: localStorage,setItem("key","value")localStorage.getItem("key") * 小程序中 wx.setStorageSync('key', value); * 2. 存的时候 ...
  • 我用uniapp写的一个H5,嵌套在微信小程序web-view中,但是用户反应,登录过后,老是出现需要登录的情况,安卓手机普遍出现,ios情况较少,导致用户体验很差,业务模式很难继续进行下去。 2、原因?未知,社区找了很...
  • 微信小程序 本地存储

    2020-03-03 18:11:53
    我们知道,在HTML5中,新加入了localStorage本地存储功能,解决了cookie空间不足的问题(存储空间为4k),localStorage一般则支持5M的存储空间(不同浏览器中会有些...微信小程序中的数据有效期和localStorage相似...
  • 微信小程序今年新上线了插屏广告,设置和在代码库中接入都非常方便。详细可见微信小程序官方文档。 大体的流程就是在小程序后台新建广告位,获取到广告位的adUnitId并嵌入到源代码,因为插屏广告的单页面性,在页面...
  • 关于本地缓存 ...2.localStorage 是永久存储 相应的api———- wx.setStorage(OBJECT) wx.getStorage(OBJECT) wx.getStorageInfo(OBJECT) wx.removeStorage(OBJECT) wx.setStorageSync(KEY,DATA)   wx
  • 用原生小程序也是一样的,没什么差别。 首先,先想想看我们希望怎么用最方便,是不是直接在uni.setStorageSync的最后面补一个时间最方便啊,像这样 uni.setStorageSync('test1', 123, 5000) // 使用相对时间 uni....
  • 在ios设备上无法重复setItem() 另外,在iPhone/iPad上有时设置setItem()时会出现诡异QUOTA_EXCEEDED_ERR错误。 这时一般在setItem之前,先removeItem()就ok了。
  • 微信小程序上滑加载下拉刷新(onscrollLower)分批加载数据(一) 页面缓存的设置优化了页面加载,减少了频繁的调取接口,使用户在断网的情况下有更好的体验。 每个微信小程序都可以有自己的本地缓存,可以通过 wx....
  • 主要介绍了微信小程序适配iphoneX的实现方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • 微信浏览器H5 localStorage 无效 无效的: let data = JSON.stringify({}) // JS对象转JSON localStorage.setItem('data', data) JSON.parse(localStorage.getItem('data')) // parse JSON转js对象 生效的: ...
  • 微信小程序之数据缓存

    万次阅读 2016-11-18 14:48:30
    微信小程序中,数据缓存其实就和localstorage 的原理差不多,所以理解起来并不难。下面我们来一起实现一下。效果图展示: 我们在index页面存入数字11,然后在跳转到新页面,在将缓存中的11取出渲染到
  • 们在开发小程序的时候,常常会用到本地存储,下面我就来给大家分享一下微信本地存储的使用。 一、数据支持 需要存储的内容。只支持原生类型、Date、及能够通过JSON.stringify序列化的对象。 二、方法 1、同步 (1)...
  • 微信小程序报Cannot read property 'setData' of undefined的错误 最近在学习开发微信小程序,记录下项目中遇到的一个报错. 具体报错如下: 这时打印下this发现是未定义 this指向被改变 我们只要将上面的success函数...
  • localstorage uni.setStorageSync('openId',"val"); uni.getStorageSync('openId'); vuex _this.$store.commit('set_user_info', infoRes.userInfo); _this.$store.state.dwid;
  • 微信小程序api

    千次阅读 2021-12-30 22:54:01
    小程序开发框架提供丰富的微信原生API,可以方便的调起微信提供的能力,如获取用户信息,本地存储,支付功能等 2.api分类 监听api 约定以on开头的API用了来监听某个事件是否触发 同步api 约定,以Sync结尾的API都...
  • 微信小程序】 storage的小结

    千次阅读 2018-09-30 13:58:33
    微信本地存储,为此提供了好几个方法。 api文档如下: https://developers.weixin.qq.com/miniprogram/dev/api/storage/wx.getStorage.html ... ps...
  • 微信小程序之登录页并存储用户

    千次阅读 2020-02-26 20:40:33
    效果图: login.wxml: <!--pages/login/login.wxml--> <view class="container"> <view class="login-icon"> <image class="login-img" src="/images/logo.png">.../image&...
  • 昨天在看自己写的小程序项目,无意中打开了CSDN APP,突然间觉得,我去,如果在小程序中加个“签到”功能,岂不美哉!(好吧,其实是买的书昨天没到货,然后闲着无事,就想起了大明湖畔的“签到”) 但是吧,又不想...
  • 【可能原因1】-存储时间短:看网上有说,localStorage微信上存储时间只有6 7分钟,但是我第一次点击进去,存储了本地数据后,马上重新进去,还是获取为空。 【可能原因2】-取出的是json格式,不是对象:如果你是...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,005
精华内容 1,202
关键字:

微信小程序localstorage

微信小程序 订阅