微信小程序遇到的一些问题及解决方法(设备安装)

微信小程序遇到的一些问题及解决方法

1、js将字符串按照换行符分隔成数组

javascript 复制代码
//转换成数组
snsArr=str.split(/[(\r\n)\r\n]+/);
//删除空项
snsArr.forEach((item,index)=>{
      if(!item){
          snsArr.splice(index,1);
      }
})

2、vue byte数组

1)、byte数组

javascript 复制代码
let arr = new Uint8Array([0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x20, 0x57, 0x6f]);

2)、将byte数组转换为字符串

javascript 复制代码
let str = String.fromCharCode.apply(null, arr);
console.log(str);

3)、将字符串转换为byte数组

javascript 复制代码
let str = "Hello World";
let arr = new Uint8Array(str.length);

4)、在Vue中使用byte数组。例如,我们可以使用axios发送包含byte数组的POST请求

javascript 复制代码
let arr = new Uint8Array([0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x20, 0x57, 0x6f]);
axios.post('/api', arr).then(response =>{
	console.log(response.data);
});

3、使用vant-weapp的文件上传capture="camera" 无法直接调用摄像头

javascript 复制代码
<template>
	<van-uploader
	 :file-list="fileListImage"
	 accept="media"
	 :capture="capture"
	 camera="back"
	 compressed
	 max-count="9"
	 max-duration="60"
	 media-type="['image', 'video']"
	 @after-read="afterReadImage"
	 @delete="deleteFileImage"
/>
</template>

export default {
  data() {
    return {
      capture: ["camera"],
    };
  }
}

4、errMsg: "request:fail -2:net::ERR_FAILED" errno: 600001

5、微信小程序 页面跳转传递值几种方法详解

1)、路由传参

javascript 复制代码
// 通过页面路由函数wx.navigateTo或wx.redirectTo的第二个参数传递数据
wx.navigateTo({
  url: '/pages/details/details',
  success: function(res) {
    // 通过eventChannel向被打开页面传送数据
    res.eventChannel.emit('acceptDataFromOpenerPage', {data: 'test'})
  }
});

// 在被打开页面的onLoad方法中使用wx.onEvent监听事件,并获取数据
onLoad: function(options) {
   var _this = this
   // 监听acceptDataFromOpenerPage事件,获取上一页面通过eventChannel传送到当前页面的数据
   const eventChannel = this.getOpenerEventChannel()
   eventChannel.on('acceptDataFromOpenerPage', function(data) {
     console.log(data) //输出{data: 'test'}
     _this.setData({
       test: data.data
     })
   })
}

2)、本地缓存传参

javascript 复制代码
// 跳转前页面存储数据
wx.setStorageSync('key', 'value')
wx.navigateTo({
   url: '/pages/index/index'
});

// 跳转后页面获取缓存数据
onLoad: function () {
   var value = wx.getStorageSync('key')
   console.log(value) //输出"value"
}

3)、全局变量传参

javascript 复制代码
// 跳转前页面存储数据 app.js
App({
  globalData:{
    key: 'value'
  }
})
//page.js
wx.navigateTo({
   url: '/pages/index/index'
})

onLoad: function () {
   var app = getApp()
   console.log(app.globalData.key) //输出"value"
}

4)、URL传参

javascript 复制代码
// 通过在URL中携带参数传递数据,如:"/pages/details/details?id=1001"

// 在接收页面的onLoad方法中可以获取传递的参数:
onLoad: function(options) {
   console.log(options.id) //输出1001
}

6、微信小程序视频播放,点击视频大屏展示预览

javascript 复制代码
 <video src="{{videosrc}}" bindtap="previewVideo" data-current="{{videosrc}}" class="video"></video>
  // 视频预览 也可图片预览
  previewVideo(e){
    wx.previewMedia({
      sources: [{
        url: e.currentTarget.dataset.current, //视频播放路径
        type: 'video'//video视频 image图片
      }]
    })
  },
相关推荐
lpfasd1232 小时前
node-sass 停止维护!老项目迁移 Dart Sass 完整教程
前端·rust·sass
Data analyse4564 小时前
rnweb 回放数据量太大怎么办?分片存储与断点续传的实现思路
前端·网络·算法·数据分析
xiaogai_gai5 小时前
金蝶收料通知单查询策略实战教程:从源系统拉取到中间层落地的完整路径
java·前端·数据库
环境栈笔记5 小时前
指纹浏览器 WebRTC 怎么设置?从 ICE 候选、代理出口到功能验证
前端·人工智能·后端·自动化
赵大仁6 小时前
官网性能优化实战:LCP 3.2s → 2.1s、CLS 0.107 → 0,以及被我推翻的 6 个判断
前端·性能优化·cls·lcp·core web vitals
xiancai_xianyu6 小时前
Text2SQL落地生产库前,SQL要过哪三道闸
前端·数据库·sql·sql注入·text2sql·ai agent开发·企业级ai框架
小羊没烦恼!6 小时前
T-SQL查询进阶--理解SQL SERVER中的分区表
服务器·开发语言·前端·javascript·html
小蒜学长6 小时前
微信小程序-高校自习室管理系统(代码+数据库+LW)
java·spring boot·后端·微信小程序·自习室管理
史瓦辛格6 小时前
给 DeepSeek Harness 写费用插件:把「这次会话花了多少钱」算准
前端·deepseek
星光不问赶路人6 小时前
Vue 3 + TypeScript 中 enum 的使用实践
前端·vue.js