最新提问
  • 全部
  • 文章
  • 问答

  • 矿石需求的小程序平台:具有或不具有撮合功能需要什么样的类目或资质啊?

    我们要做一个关于矿石需求的平台,客户会发布我要买什么, 我要卖什么,如果仅做这个展示,需要什么类目和资质? 如果添加了撮合的功能,比如,A需要铝矿,系统找到卖铝矿的信息,把它们推荐给客户,这样的话需要什么类目和资质啊?

  • 小程序出现ERR_CONNECTION_RESET,该怎么排查?

    客户端版本:8.0.68 基础库版本:3.13.2 操作系统:ios 小程序id:wxac43fa84faa1b7fd 以下是用户在访问图片时,调用wx.getImageInfo时报的错误信息,大部分用户是没问题,但是最近反馈很多类似无法获取图片的错误,类似的错误大多数集中在一个地区,服务端的白名单域名配置都正确,怎么解决这个网络问题呢? {'err':'{"errMsg":"getImageInfo:fail download image fail. reason: downloadFile:fail errcode:-101 cronet_error_code:-101 error_msg:net::ERR_CONNECTION_RESET"}','id':'createFilterImgSuccess','params':'{"filterUrl":"https://oss.jiahk.cn/temp/filter/CD326842-DAE4-4634-8BDE-C94B1DDDB484.jpeg"}'}

  • 小程序内能加入自己的微信号 么?

    111

  • 认证服务号,为什么在文章中加不了外链?

    开普勒机器人是认证服务账号,在文章中想插入外链跳转,为什么没有这个功能? 其他账号已测试,可以操作外链。 求解决

  • 微信公众平台登录小程序后,缺失用户隐私保护指引配置入口?

    AppID(小程序ID) wx35671b05da06a9cc 下面是文档截图 [图片] 下面是我的小程序的截图 [图片] 服务内容声明里面没有用户隐私保护指引,这是为什么呢?

  • 微信小程序主体变更,个人变到个人?

    微信小程序主体变更,个人变到个人,扫脸显示法定代表人信息不一致,法定代表人验证失败?换了两个人都不行。

  • 小程序/网站/app/快应用存在空壳情况(即对应服务无接入商)被管局退回,怎么解决?

    本次备室主体下已备室成功的互联网信息服务:小程序/网站/app/快应用存在空壳情况(即对应服务无接入商)被管局退回,请自查对应服务接入情况,请解决该问题后重新提交当前订单。名下备案的程序是能正常搜索能正常访问的。怎么会出现这个情况呢?[图片]

  • 服务号认证,公众号没认证,公众号能免费申请视频号认证?

    如题 ,服务号去认证,公众号没提到认证,公众号能免费申请视频号认证?下面的回复是不是找错了,应该是公众号认证,再以公众号的认证免费去认证视频号。盼复。 以下是智能回复的原文。 您好,针对小微企业账号名称统一问题,建议按以下步骤处理: 服务号名称修改: 对当前名为「傲蓝环保」的服务号进行微信认证(300元/次),在认证流程的「确认名称」环节直接保留原名称「傲蓝环保」通过认证即可(无需强制改名)。认证通过后服务号将获得名称保护,其他账号无法占用该名称。 公众号重命名: 服务号认证成功后,未认证的公众号「傲蓝-滤袋-荧光粉」即可申请更名为「傲蓝环保」(需确保名称符合规则)。 视频号认证: 公众号认证通过后,可在视频号设置中直接申请企业认证(需满足:公众号已认证+视频号与公众号同名),无需重复缴纳认证费用。 商标相关问题: 当前认证无需提交商标证书,但若后续完成商标注册,建议在公众号后台【设置-账号详情】中补充上传商标注册证及授权书,以增强账号权益保护。 操作指引: • 微信认证流程:https://kf.qq.com/product/weixinmp.html#hid=99 • 名称修改规则:https://kf.qq.com/faq/120911VrYVrA160722nURN7r.html

  • TypeError: wxPano.config 报错找不到?

    <template> <pano :panolist="panolist" :entryid="entrypanoid" :entryname="entrypanoname" width="320" height="240" :key="key" :utoinit="false"> <cover-view style="position: fixed;top:80%;width:100%;text-align:center;"> <cover-view style="width:50%;text-align:center;float:left;" bindtap="covertap">跳转全景图</cover-view> <cover-view style="width:50%;text-align:center;float:left;" bindtap="setCameraLookAt">切换视角</cover-view> <cover-view style="width:50%;text-align:center;float:left;" bindtap="enableTouch">打开触摸</cover-view> <cover-view style="width:50%;text-align:center;float:left;" bindtap="disableTouch">关闭触摸</cover-view> <cover-view style="width:50%;text-align:center;float:left;" bindtap="getPanoInfo">获取当前全景信息</cover-view> </cover-view> </pano> </template> <script> export default { // data() { // return { // // 插件状态 // pluginReady: false, // showLoading: true, // loadingText: '初始化中...', // loadingRetryCount: 0, // maxRetryCount: 5, // showRetryBtn: false, // // 调试信息 // debugMode: true, // 开发时开启,生产时关闭 // debugInfo: '', // wxPanoExists: false, // configExists: false // }; // }, onLoad(options) { // 注意:这里不使用 const,因为插件可能异步加载 var wxPano = requirePlugin("wxPano") console.log('插件管理器:', wxPano); // 检查插件是否已授权 const pluginManager = wx.getPluginManager && wx.getPluginManager(); // 检查已安装的插件 const plugins = wx.getStorageSync('plugins') || {}; console.log('已安装的插件:', plugins); //console.log('页面加载,开始初始化插件'); setTimeout(() => { wxPano.config({ panolist:[{ name:"xindamen", src: "https://qcloud.dpfile.com/pc/UVlO2SAIXfHl1S291oBVrhRHEMii-N3Tm7LQBo_RAdcPu-sWyOM5Vp-C07zrDsmD.jpg", infospots:[ //信息标记 { type: "modal", modal: { title: "wxPano", content: "欢迎使用wxPano" }, position: { x: 0.092, y: 0.434 }, size: 1, icon: "info", bindcamera:true, bindsize: 0.5, bindicon: "info", bindopacity:0.75, bindposition: { x: 0.5, y: 0.75 } }, { type: "page", page: function(){ wx.navigateTo({url: "ar", success(evt) { console.log(evt); } }) }, position: { x: 0.437, y: 0.447 }, size: 1, icon: "info" } ] }], request:wx.request, loader:"GLLoader", entryname:"xindamen"}); console.log('插件管理器:'); }, 30000); // setTimeout(() => { // this.initPanoPlugin(); // }, 2000); }, // onReady() { // console.log('页面就绪,再次检查插件状态'); // // 延迟检查,确保页面完全渲染 // // setTimeout(() => { // this.checkPluginStatus(); // // }, 2000); // }, // methods: { // // 检查插件状态 // checkPluginStatus() { // try { // // 尝试获取插件 // wxPano = requirePlugin("wxPano"); // console.log('wxPano对象:', wxPano); // console.log('wxPano类型:', typeof wxPano); // console.log('wxPano属性:', Object.keys(wxPano || {})); // console.log('wxPano对象获取成功,属性检查:', { // config: typeof wxPano.config, // on: typeof wxPano.on, // setCameraLookAt: typeof wxPano.setCameraLookAt // }); // this.wxPanoExists = !!wxPano; // this.configExists = wxPano && typeof wxPano.config === 'function'; // this.debugInfo = `wxPano: ${this.wxPanoExists}, config: ${this.configExists}`; // if (wxPano ) { // console.log('插件已就绪,可以调用config'); // if (!this.pluginReady) { // this.pluginReady = true; // this.doPanoConfig(); // } // } else { // console.warn('插件尚未就绪,继续等待...'); // } // } catch (error) { // console.error('检查插件状态时出错:', error); // this.debugInfo = `错误: ${error.message}`; // } // }, // // 初始化插件 // initPanoPlugin() { // console.log('开始初始化全景插件...'); // this.showLoading = true; // this.loadingText = '正在加载插件...'; // // 方案1:直接尝试获取插件 // this.loadingRetryCount++; // try { // wxPano = requirePlugin("wxPano"); // console.log('直接获取wxPano结果:', wxPano); // if (wxPano) { // console.log('wxPano对象获取成功,属性检查:', { // config: typeof wxPano.config, // on: typeof wxPano.on, // setCameraLookAt: typeof wxPano.setCameraLookAt // }); // // 检查插件是否完全就绪 // if (typeof wxPano.config === 'function') { // console.log('插件已完全就绪'); // this.pluginReady = true; // this.showLoading = false; // this.doPanoConfig(); // return; // } // // 如果config不存在,尝试监听ready事件 // if (typeof wxPano.on === 'function') { // console.log('监听插件ready事件...'); // wxPano.on('ready', () => { // console.log('收到插件ready事件'); // this.pluginReady = true; // this.showLoading = false; // this.doPanoConfig(); // }); // // 设置超时 // setTimeout(() => { // if (!this.pluginReady) { // console.warn('ready事件超时,尝试直接调用'); // this.checkPluginStatus(); // } // }, 3000); // } else { // // 如果没有on方法,开始轮询 // this.startPolling(); // } // } else { // console.warn('requirePlugin返回null或undefined'); // this.startPolling(); // } // } catch (error) { // console.error('获取插件时出错:', error); // this.startPolling(); // } // }, // // 开始轮询检查 // startPolling() { // console.log('开始轮询检查插件状态...'); // if (this.loadingRetryCount >= this.maxRetryCount) { // this.showLoading = false; // this.showRetryBtn = true; // this.loadingText = '插件加载失败'; // console.error('达到最大重试次数,插件加载失败'); // return; // } // this.loadingRetryCount++; // this.loadingText = `尝试加载插件 (${this.loadingRetryCount}/${this.maxRetryCount})...`; // setTimeout(() => { // this.checkPluginStatus(); // if (!this.pluginReady) { // this.startPolling(); // } // }, 1500); // }, // // 执行插件配置 // doPanoConfig() { // if (!this.pluginReady || !wxPano) { // console.error('插件未就绪,无法配置'); // return; // } // try { // console.log('开始执行wxPano.config...'); // // 执行配置 // wxPano.config({ // panolist: [{ // name: "office_scene", // src: "../../assets/11045.jpg", // }], // loader: "GLLoader", // entryname: "office_scene" // }); // // 检查配置函数是否存在 // if (typeof wxPano.config !== 'function') { // console.error('wxPano.config不是函数:', wxPano.config); // this.showRetryBtn = true; // this.loadingText = '插件API异常'; // return; // } // console.log('wxPano.config执行成功'); // this.showLoading = false; // // 监听事件 // this.setupEventListeners(); // // 显示成功提示 // uni.showToast({ // title: '全景加载成功', // icon: 'success', // duration: 2000 // }); // } catch (error) { // console.error('执行wxPano.config时出错:', error); // uni.showToast({ // title: `配置失败: ${error.message}`, // icon: 'none', // duration: 3000 // }); // this.showRetryBtn = true; // this.loadingText = '配置失败,请重试'; // } // }, // // 设置事件监听 // setupEventListeners() { // if (!wxPano) return; // // 监听导航事件 // if (typeof wxPano.onNavigate === 'function') { // wxPano.onNavigate = (event) => { // console.log('导航事件:', event); // }; // } // // 监听加载事件 // if (typeof wxPano.on === 'function') { // wxPano.on('load', (event) => { // console.log('场景加载完成:', event); // }); // wxPano.on('error', (error) => { // console.error('插件错误:', error); // }); // } // }, // // 测试插件API // testPlugin() { // console.log('=== 测试插件API ==='); // console.log('1. requirePlugin结果:', requirePlugin("wxPano")); // console.log('2. wxPano对象:', wxPano); // console.log('3. 插件配置:', uni.getStorageSync('plugins')); // // 尝试其他方式获取插件 // if (typeof wx !== 'undefined') { // console.log('4. 检查全局wx对象:', { // getPlugin: typeof wx.getPlugin, // requirePlugin: typeof wx.requirePlugin // }); // } // // 检查uni对象 // console.log('5. uni对象方法:', { // requirePlugin: typeof uni.requirePlugin // }); // // 尝试使用uni.requirePlugin // try { // const plugin = uni.requirePlugin("wxPano"); // console.log('6. uni.requirePlugin结果:', plugin); // } catch (error) { // console.error('uni.requirePlugin错误:', error); // } // }, // // 重试加载 // retryLoadPlugin() { // console.log('重新加载插件...'); // this.loadingRetryCount = 0; // this.pluginReady = false; // this.showRetryBtn = false; // this.showLoading = true; // this.loadingText = '重新加载中...'; // // 清除可能的缓存 // wxPano = null; // // 重新初始化 // setTimeout(() => { // this.initPanoPlugin(); // }, 1000); // }, // // 重置视角 // resetView() { // if (!this.pluginReady || !wxPano || typeof wxPano.setCameraLookAt !== 'function') { // uni.showToast({ // title: '插件未就绪', // icon: 'none' // }); // return; // } // try { // wxPano.setCameraLookAt({ x: 0.5, y: 0.5 }); // } catch (error) { // console.error('重置视角失败:', error); // } // } // }, // onUnload() { // // 清理资源 // if (wxPano && typeof wxPano.destroy === 'function') { // wxPano.destroy(); // } // wxPano = null; // } }; </script> <style scoped> .pano-container { width: 100vw; height: 100vh; position: relative; overflow: hidden; } .loading-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: #000; display: flex; justify-content: center; align-items: center; z-index: 1000; } .loading-content { display: flex; flex-direction: column; align-items: center; padding: 40rpx; } .loading-spinner { width: 80rpx; height: 80rpx; border: 8rpx solid rgba(255, 255, 255, 0.1); border-top: 8rpx solid #00b4ff; border-radius: 50%; animation: spin 1s linear infinite; margin-bottom: 40rpx; } @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } .loading-text { color: #fff; font-size: 32rpx; margin-bottom: 20rpx; text-align: center; } .debug-info { color: #ff9900; font-size: 24rpx; margin: 20rpx 0; background: rgba(0, 0, 0, 0.5); padding: 10rpx 20rpx; border-radius: 10rpx; } .retry-btn { background: #00b4ff; color: white; border: none; border-radius: 40rpx; padding: 20rpx 40rpx; font-size: 28rpx; margin-top: 40rpx; } .debug-panel { position: absolute; top: 100rpx; left: 20rpx; background: rgba(0, 0, 0, 0.7); color: white; padding: 20rpx; border-radius: 10rpx; font-size: 24rpx; z-index: 1001; display: flex; flex-direction: column; gap: 10rpx; } .debug-panel button { background: #ff9900; color: white; border: none; border-radius: 20rpx; padding: 10rpx 20rpx; font-size: 24rpx; margin-top: 10rpx; } .pano-wrapper { width: 100%; height: 100%; background: #000; } </style>

  • 小程序设备消息订阅,设备怎么注册绑定到微信平台?

    我们目前需要将设备故障信息推送至小程序通知用户,设备消息通过 [代码]sendHardwareDeviceMessage[代码] 接口发送。 该接口请求参数中的 [代码]sn[代码] 是不是需要通过自有 IoT 平台完成注册绑定到微信平台 ?具体这部分如何接入 如果设备 未通过自有 IoT 平台完成注册或绑定,在推送消息时将会报错: 订阅 model_id 和 SN 关系校验失败,请确认发送消息时传入的 model_id 和 SN 与订阅时传入的是否一致。

  • 收到《实物交易类小程序跳转规范》,现在无法从外店跳转,经营品牌和非品牌类商品,请问该如何操作?

    问题1:我把非品牌类商品下架可以继续经营吗?还是增加经营类目就可以? 问题2:需要把非品牌类的商品挂到我方微信小程序?还是供应商的微信小程序?

  • 微信小程序Canvas文档不清晰,缺少新版文档,API对Typescript 支持非常差!!!!

    https://developers.weixin.qq.com/miniprogram/dev/devtools/compilets.htmlhttps://developers.weixin.qq.com/miniprogram/dev/reference/wxs/05statement.html复制 微信小程序Canvas文档不清晰,缺少新版文档,微信小程序API文档与Typescript 支持不同步,缺失很多!

  • 门店认证授权结果回调问题?

    bb-plugin 小程序开通B2B门店后 前端引导客户做门店认证,客户认证成功或失败的结果如何及时获取到,要传递给后端做数据标记啊,(测试过认证成功后台消息渠道也没有推送) 公司业务要对不同客户走不同的业务逻辑

  • 后台小程序消息推送每次都要小程序端客户授权吗?

    小程序端授权"总是选择" 也勾选了,一个小程序企业服务目录为工具 > 健康管理 工具 > 视频客服 资讯 > 信息资讯 工具 > 备忘录 工具 > 办公,消息模版是一次性的,是只要勾选了,可以多次推送消息,另一个小程序企业服务目录为商业服务 > 企业管理,这个推送消息就是不行的,是这个服务目录的问题吗,如果服务目录不好变更是否有其它办法可以解决的。

  • 由于应用和小程序未绑定在同一微信开放平台账号,无法分 享到微信,为什么?

    [图片]

  • wxsdk getLocation 的type参数不生效的问题,是我使用的问题还是bug?

    wxsdk getLocation 的type参数不生效的问题。下面是业务代码 // 同时获取用户位置和地点位置 const [userLocation, userLocationGcj02, browserLocation, placeLocation] = await Promise.all([ getUserLocationByWxSdk('wgs84'), getUserLocationByWxSdk(), getLocationByBrowser(), getPlaceLocationByPlaceId(placeId), ]); const isRange = isWithinRange(userLocation, placeLocation, 1000); const distance = calculateDistance(userLocation, placeLocation); // ===============test const distanceWgs84 = calculateDistance(browserLocation, placeLocation); const distanceGcj02 = calculateDistance(userLocationGcj02, placeLocation); const wgs84ToGcj02 = gcoord.transform( [userLocation.latitude, userLocation.longitude], gcoord.WGS84, gcoord.GCJ02 ); const test2 = gcoord.transform( [userLocationGcj02.latitude, userLocationGcj02.longitude], gcoord.WGS84, gcoord.GCJ02 ); uni.showModal({ title: '提示', content: ` WX-SDK(wgs84):${userLocation.latitude},${userLocation.longitude}\n WX-SDK(gcj02):${userLocationGcj02.latitude},${userLocationGcj02.longitude}\n 浏览器定位位置(wgs84):${browserLocation.latitude},${browserLocation.longitude}\n 当前设施位置:${placeLocation.latitude},${placeLocation.longitude}\n 距离设施(WX-SDK wgs84):${distance}米\n 距离设施(WX-SDK gcj02):${distanceGcj02}米\n 距离设施(浏览器):${distanceWgs84}米\n ------------- wgs84ToGcj02:${wgs84ToGcj02}\n test2:${test2}\n `, showCancel: true, }); 真机生产数据。那wsg84和gcj02怎么就一样了呢????? [图片] 封装Wxsdk的方法 /** * H5通过微信JDK获取用户位置 * @param type 位置类型 gcj02/wgs84 默认gcj02 * @returns 用户位置 */ export const getUserLocationByWxSdk = async ( type: 'gcj02' | 'wgs84' = 'gcj02' ): Promise<GeoPosition> => { if (!navigator.geolocation) { uni.showToast({ title: '您的设备不支持定位功能', icon: 'none', }); return { latitude: 0, longitude: 0 }; } try { const location = await new Promise<GeoPosition>((resolve, reject) => { //@ts-ignore wx.getLocation({ type, isHighAccuracy: true, success: (res: any) => { const { latitude, longitude, accuracy } = res; resolve({ latitude, longitude, accuracy, type }); }, fail: reject, }); }); return location; } catch (err) { console.error('获取位置失败:', err); uni.showToast({ title: '获取位置失败', icon: 'none', }); return { latitude: 0, longitude: 0, accuracy: 0, type: 'gcj02' }; } }

  • 微信中打开链接提示无法确认网页安全性?

    https://mtxdj.cn 微信内打开提示无法确认网页安全性,影响用户使用,网站已备案,无违规内容,请帮忙恢复访问,谢谢[图片][图片][图片]

  • 刚刚上线成功的小程序怎么限制 小程序跳转功能了?

    刚刚上线成功的小程序怎么限制 小程序跳转功能了? 我这个小程序也不涉及商家自营商品功能,可能是我类目设置错了已经修改过了,请求官方处理一下 AppID(小程序ID) wxd1048875d88f2c61 原始ID gh_211412584210 [图片]

  • 这是什么问题导致的?怎么解决?有知道的吗?

    微信公众平台关联不了公众号 [图片]

  • 显示公司的信息及员工对外的名片,包含了填写名片与分享名片模板功能,为什么提审时一直提示无实质业务?

    新的体验版1.0.1已经放开了可编辑的所有功能,没有限制任何实质业务,为什么1.0.1这个版本还是审核不过?而且在提审材料中写清楚了文字说明,也加了录屏。主营业务也改成了推广与公关,也具备名片展示功能和完整的用户交互路径,例如员工信息展示、联系方式跳转等实质性服务 [图片]

运营专区
运营公告、规则解析与使用教程。
更多