HBuilderX

HBuilderX

极客开发工具
uni-app

uni-app

开发一次,多端覆盖
uniCloud

uniCloud

云开发平台
HTML5+

HTML5+

增强HTML5的功能体验
MUI

MUI

上万Star的前端框架

乱花渐欲迷人眼,浅草才能没马蹄

HBuilder

四十年来家国,三千里地山河
三岁为妇,靡室劳矣夙兴夜寐,靡有朝矣
淇则有岸,隰则有泮
女也不爽,士贰其行士也罔极,二三其德
空床卧听南窗雨,谁复挑灯夜补衣
兰有秀兮菊有芳,怀佳人兮不能忘
秋风起兮白云飞,草木黄落兮雁南归
锦江春色来天地,玉垒浮云变古今
北极朝廷终不改,西山寇盗莫相侵
怡然敬父执,问我来何方问答乃未已,驱儿罗酒浆
昔别君未婚,儿女忽成行
夜雨剪春韭,新炊间黄粱
他年我若为青帝,报与桃花一处开
飒飒西风满院栽,蕊寒香冷蝶难来
明日隔山岳,世事两茫茫

继续阅读 »

四十年来家国,三千里地山河
三岁为妇,靡室劳矣夙兴夜寐,靡有朝矣
淇则有岸,隰则有泮
女也不爽,士贰其行士也罔极,二三其德
空床卧听南窗雨,谁复挑灯夜补衣
兰有秀兮菊有芳,怀佳人兮不能忘
秋风起兮白云飞,草木黄落兮雁南归
锦江春色来天地,玉垒浮云变古今
北极朝廷终不改,西山寇盗莫相侵
怡然敬父执,问我来何方问答乃未已,驱儿罗酒浆
昔别君未婚,儿女忽成行
夜雨剪春韭,新炊间黄粱
他年我若为青帝,报与桃花一处开
飒飒西风满院栽,蕊寒香冷蝶难来
明日隔山岳,世事两茫茫

收起阅读 »

求购 TV Demo

要求:

  1. 用 HBuilderX
  2. 用 Vue
  3. 可以监听 上下左右 确认 取消 返回 菜单按键
    可以加我微信具体沟通 bestsnow1206

要求:

  1. 用 HBuilderX
  2. 用 Vue
  3. 可以监听 上下左右 确认 取消 返回 菜单按键
    可以加我微信具体沟通 bestsnow1206

unipush无法推送Google FCM离线消息边秋一雁声uni统计

uni统计 uni_app

戍鼓断人行,边秋一雁声
红酥手,黄縢酒,满城春色宫墙柳
枝上柳绵吹又少天涯何处无芳草
花开不并百花丛,独立疏篱趣未穷
千磨万击还坚劲,任尔东西南北风
花褪残红青杏小燕子飞时,绿水人家绕
露从今夜白,月是故乡明
宁可枝头抱香死,何曾吹落北风中
醉翁之意不在酒,在乎山水之间也
咬定青山不放松,立根原在破岩中
74651314
https://bbs.co188.com/thread-10130294-1-1.html

继续阅读 »

戍鼓断人行,边秋一雁声
红酥手,黄縢酒,满城春色宫墙柳
枝上柳绵吹又少天涯何处无芳草
花开不并百花丛,独立疏篱趣未穷
千磨万击还坚劲,任尔东西南北风
花褪残红青杏小燕子飞时,绿水人家绕
露从今夜白,月是故乡明
宁可枝头抱香死,何曾吹落北风中
醉翁之意不在酒,在乎山水之间也
咬定青山不放松,立根原在破岩中
74651314
https://bbs.co188.com/thread-10130294-1-1.html

收起阅读 »

dfher,ff发的是个狠都人规范发,checkbox/checkbox-group的时候,复选框无法选中

uniapp

懂法守定时fdrwhddfher,ffuni-app,近期,在使用uniapp做项目,发现在使用checkbox/checkbox-group的时候,复选框无法选中,并且无法多选

懂法守定时fdrwhddfher,ffuni-app,近期,在使用uniapp做项目,发现在使用checkbox/checkbox-group的时候,复选框无法选中,并且无法多选

titleNview里的fontSrc路径的使用

titleNView

"style": {
"app-plus" : {
"scrollIndicator" : "none",
"titleNView" : {
"buttons" :[
{
"float":"left",
"color":"#ff9619",
"fontSize":"20px",
"fontSrc":"./static/font/iconfont.ttf", //必须放在static目录下
"text" : "\ue606"
},{
"float":"right",
"color":"#000",
""
}
],
"searchInput" : {
"backgroundColor" : "#f7f7f7",
"align":"center",
"borderRadius": "10px",
"placeholderColor":"#ccc",
"placeholder" : "搜索臭事"
}
}
}
}

继续阅读 »

"style": {
"app-plus" : {
"scrollIndicator" : "none",
"titleNView" : {
"buttons" :[
{
"float":"left",
"color":"#ff9619",
"fontSize":"20px",
"fontSrc":"./static/font/iconfont.ttf", //必须放在static目录下
"text" : "\ue606"
},{
"float":"right",
"color":"#000",
""
}
],
"searchInput" : {
"backgroundColor" : "#f7f7f7",
"align":"center",
"borderRadius": "10px",
"placeholderColor":"#ccc",
"placeholder" : "搜索臭事"
}
}
}
}

收起阅读 »

【捷映视频制作】经过两个月的日夜开发,终于上线,欢迎提交BUG。

uniapp

【捷映】是一款专业的短视频制作工具,提供海量的创意模板,丰富的音乐资源、酷炫的特效,以及简单易操作的特性,让每一位用户在手机上就能轻松制作出喜欢的短视频。


这是捷映APP首页。

应用前端采用uniapp开发,后端采用PHP开发,使用8核16G服务器渲染视频,速度飞快。
欢迎各位程序猿扫码体验,如能报告BUG联系客服有奖励哦。

继续阅读 »

【捷映】是一款专业的短视频制作工具,提供海量的创意模板,丰富的音乐资源、酷炫的特效,以及简单易操作的特性,让每一位用户在手机上就能轻松制作出喜欢的短视频。


这是捷映APP首页。

应用前端采用uniapp开发,后端采用PHP开发,使用8核16G服务器渲染视频,速度飞快。
欢迎各位程序猿扫码体验,如能报告BUG联系客服有奖励哦。

收起阅读 »

uni-app 如何判断/获取 左滑右滑上滑下滑 等手势事件。

uniapp

官方我没有看到监听的方法,大家可以参考下面的方法,可以自己修改50的大小。

<template>  
    <view @touchstart="touchStart" @touchend="touchEnd" style="height:2000px;">  
        测试  
    </view>  
</template>  
<script>  
    export default {  
        data() {  
            return {  
                touchStartX: 0,  // 触屏起始点x  
                touchStartY: 0,  // 触屏起始点y  
            };  
        },  
        methods: {  
            /**  
            * 触摸开始  
            **/  
            touchStart(e) {  
                console.log("触摸开始")  
                this.touchStartX = e.touches[0].clientX;  
                this.touchStartY = e.touches[0].clientY;  
            },  

            /**  
            * 触摸结束  
            **/  
            touchEnd(e) {  
                console.log("触摸结束")  
                let deltaX = e.changedTouches[0].clientX - this.touchStartX;  
                let deltaY = e.changedTouches[0].clientY - this.touchStartY;  
                if (Math.abs(deltaX) > 50 && Math.abs(deltaX) > Math.abs(deltaY)) {  
                    if (deltaX >= 0) {  
                        console.log("左滑")  
                    } else {  
                        console.log("右滑")  
                    }  
                } else if(Math.abs(deltaY) > 50&& Math.abs(deltaX) < Math.abs(deltaY)) {  
                    if (deltaY < 0) {  
                        console.log("上滑")  
                    } else {  
                        console.log("下滑")  
                    }  
                } else {  
                    console.log("可能是误触!")  
                }  
            },            
        }  
    };  
</script>
继续阅读 »

官方我没有看到监听的方法,大家可以参考下面的方法,可以自己修改50的大小。

<template>  
    <view @touchstart="touchStart" @touchend="touchEnd" style="height:2000px;">  
        测试  
    </view>  
</template>  
<script>  
    export default {  
        data() {  
            return {  
                touchStartX: 0,  // 触屏起始点x  
                touchStartY: 0,  // 触屏起始点y  
            };  
        },  
        methods: {  
            /**  
            * 触摸开始  
            **/  
            touchStart(e) {  
                console.log("触摸开始")  
                this.touchStartX = e.touches[0].clientX;  
                this.touchStartY = e.touches[0].clientY;  
            },  

            /**  
            * 触摸结束  
            **/  
            touchEnd(e) {  
                console.log("触摸结束")  
                let deltaX = e.changedTouches[0].clientX - this.touchStartX;  
                let deltaY = e.changedTouches[0].clientY - this.touchStartY;  
                if (Math.abs(deltaX) > 50 && Math.abs(deltaX) > Math.abs(deltaY)) {  
                    if (deltaX >= 0) {  
                        console.log("左滑")  
                    } else {  
                        console.log("右滑")  
                    }  
                } else if(Math.abs(deltaY) > 50&& Math.abs(deltaX) < Math.abs(deltaY)) {  
                    if (deltaY < 0) {  
                        console.log("上滑")  
                    } else {  
                        console.log("下滑")  
                    }  
                } else {  
                    console.log("可能是误触!")  
                }  
            },            
        }  
    };  
</script>
收起阅读 »

人人商城打包APP

App打包

使用hbuilder打包人人app商城

APP制作介绍

人人商城是很好的一个商城系统 所以我写了一个基于hbuilderX的htmlplus接口的前后端文件,让人人使用hbuilder打包时,具有了原生的支付能力,以及优化了打包的代码,优化了很多无限刷新和卡死的BUG,达到了媲美原生app的流畅度。

APP和支付截图

软件架构

在WXPAY和alipay的官方php demo上进行改造,调用htmlplus接口,让人人打包app商城 支持安卓微信支付宝支付,同时支持ios的支付宝支付。(IOS微信支付也支持 但需要你上架IOS。)

打包前提

想实现wxpay功能,必须在开通微信商户功能,接入wxpa,如果想接入支付宝同理,需要签约支付宝app支付。

以及最重要的 在人人后台 把pay参数配置和填写正确。

替换后端和前端文件

下载完整的前后端代码 :https://gitee.com/lionjoy/renrenapppay
将整个pay文件夹拷贝至 :你的微擎目录/addons/ewei_shopv2/core/mobile 文件夹下。确保路径正确。
将static文件夹,拷贝至 :你的微擎目录/addons/ewei_shopv2 确保路径正确,应该是会替换掉 你的微擎目录/addons/ewei_shopv2/static/js/app/biz 下面的原有的H5app.js
仔细阅读下载的源码包中的说明,按照说明修改指定的参数

app打包教程-开始打包

在拷贝安装之前,你应该首先申请微信支付宝 appID和 微信支付的一些账号,并在微擎后台配置好参数。

我们需要使用hbuilder X打包

下载并安装HBuilderX后,打开编辑器,点击右上角选择:文件 -> 新建 -> 项目选择wap2app,

填入项目名称,wap站首页地址,选择项目文件路径,创建。项目创建成功,软件左侧会出现你刚创建的项目。然后粘贴示列项目的文件进去。

打开hbuilder后选择文件,新建 ,项目 ,项目类型选择 wap2app

然后输入你的移动端网站网址即可。 应该是这样的格式 XXXXX.com/app/index.php?i=1&c=entry&m=ewei_shopv2&do=mobile ,xxx替换成你的网站域名。如果不会请参考hbuilder官方文档

接下来对manifest.json 进行配置,参考下载资源里的说明。

manifest.json文件就配置完成了,你可以参考hbuilder官网文档对 sitemap.json 继续优化,优化加载速度等。也可以使用下载资源里我配置好的mainfest.json

接下来,打包app,安卓请使用安卓自有证书,苹果请使用苹果证书。点击HBuilder: 发行 -> 原生App-云端打包

注意打包时 一定要选择 使用自有证书, 按钮旁边有链接 可以去看怎么生成。 以及一定要设定一个应用包名 记下来,这对微信支付很重要!

点击打包按钮,你的app就被打包完毕,enjoy

继续阅读 »

使用hbuilder打包人人app商城

APP制作介绍

人人商城是很好的一个商城系统 所以我写了一个基于hbuilderX的htmlplus接口的前后端文件,让人人使用hbuilder打包时,具有了原生的支付能力,以及优化了打包的代码,优化了很多无限刷新和卡死的BUG,达到了媲美原生app的流畅度。

APP和支付截图

软件架构

在WXPAY和alipay的官方php demo上进行改造,调用htmlplus接口,让人人打包app商城 支持安卓微信支付宝支付,同时支持ios的支付宝支付。(IOS微信支付也支持 但需要你上架IOS。)

打包前提

想实现wxpay功能,必须在开通微信商户功能,接入wxpa,如果想接入支付宝同理,需要签约支付宝app支付。

以及最重要的 在人人后台 把pay参数配置和填写正确。

替换后端和前端文件

下载完整的前后端代码 :https://gitee.com/lionjoy/renrenapppay
将整个pay文件夹拷贝至 :你的微擎目录/addons/ewei_shopv2/core/mobile 文件夹下。确保路径正确。
将static文件夹,拷贝至 :你的微擎目录/addons/ewei_shopv2 确保路径正确,应该是会替换掉 你的微擎目录/addons/ewei_shopv2/static/js/app/biz 下面的原有的H5app.js
仔细阅读下载的源码包中的说明,按照说明修改指定的参数

app打包教程-开始打包

在拷贝安装之前,你应该首先申请微信支付宝 appID和 微信支付的一些账号,并在微擎后台配置好参数。

我们需要使用hbuilder X打包

下载并安装HBuilderX后,打开编辑器,点击右上角选择:文件 -> 新建 -> 项目选择wap2app,

填入项目名称,wap站首页地址,选择项目文件路径,创建。项目创建成功,软件左侧会出现你刚创建的项目。然后粘贴示列项目的文件进去。

打开hbuilder后选择文件,新建 ,项目 ,项目类型选择 wap2app

然后输入你的移动端网站网址即可。 应该是这样的格式 XXXXX.com/app/index.php?i=1&c=entry&m=ewei_shopv2&do=mobile ,xxx替换成你的网站域名。如果不会请参考hbuilder官方文档

接下来对manifest.json 进行配置,参考下载资源里的说明。

manifest.json文件就配置完成了,你可以参考hbuilder官网文档对 sitemap.json 继续优化,优化加载速度等。也可以使用下载资源里我配置好的mainfest.json

接下来,打包app,安卓请使用安卓自有证书,苹果请使用苹果证书。点击HBuilder: 发行 -> 原生App-云端打包

注意打包时 一定要选择 使用自有证书, 按钮旁边有链接 可以去看怎么生成。 以及一定要设定一个应用包名 记下来,这对微信支付很重要!

点击打包按钮,你的app就被打包完毕,enjoy

收起阅读 »

【实例,安卓/苹果】打开唤起淘宝、京东、天猫、拼多多的方法

支持安卓和苹果,参数时传入对象类型,如: openTM({url:''})
苹果6s plus ios12
安卓10,测试均没问题

function openTB(data){//已经支持安卓和ios  
        plus.runtime.openURL('taobao://' +data.url.replace("https://",""),function(error){  
            alert(JSON.stringify(error))  
        },'com.taobao.taobao');  
    }  
    function openTM(data){//已经支持安卓和ios  
        plus.runtime.openURL('tmall://page.tm/appLink?h5Url='+encodeURIComponent(data.url),function(error){  
            alert(JSON.stringify(error))  
        },'com.tmall.wireless');  
    }  
    function openJD(data){//已经支持安卓和ios  
        plus.runtime.openURL('openApp.jdMobile://virtual?params=' + encodeURIComponent('{"des":"m","url":"' +data.url+ '","category":"jump"}'),function(error){  
            alert(JSON.stringify(error))  
        },'com.jingdong.app.mall');  
    }  
    function openPDD(data){//已经支持安卓和ios  
        if(isAndroid){  
            plus.runtime.openURL("pinduoduo://"+data.url.replace("https://",""),function(res){  
                alert(JSON.stringify(res));  
            },'com.xunmeng.pinduoduo');  
        }else{  
            plus.runtime.launchApplication({action:"pinduoduo://com.xunmeng.pinduoduo/"+data.url.replace(/https:\/\/.*\//,"")},function(ret){  
                alert(JSON.stringify(ret));  
            });  
        }  
    }
继续阅读 »

支持安卓和苹果,参数时传入对象类型,如: openTM({url:''})
苹果6s plus ios12
安卓10,测试均没问题

function openTB(data){//已经支持安卓和ios  
        plus.runtime.openURL('taobao://' +data.url.replace("https://",""),function(error){  
            alert(JSON.stringify(error))  
        },'com.taobao.taobao');  
    }  
    function openTM(data){//已经支持安卓和ios  
        plus.runtime.openURL('tmall://page.tm/appLink?h5Url='+encodeURIComponent(data.url),function(error){  
            alert(JSON.stringify(error))  
        },'com.tmall.wireless');  
    }  
    function openJD(data){//已经支持安卓和ios  
        plus.runtime.openURL('openApp.jdMobile://virtual?params=' + encodeURIComponent('{"des":"m","url":"' +data.url+ '","category":"jump"}'),function(error){  
            alert(JSON.stringify(error))  
        },'com.jingdong.app.mall');  
    }  
    function openPDD(data){//已经支持安卓和ios  
        if(isAndroid){  
            plus.runtime.openURL("pinduoduo://"+data.url.replace("https://",""),function(res){  
                alert(JSON.stringify(res));  
            },'com.xunmeng.pinduoduo');  
        }else{  
            plus.runtime.launchApplication({action:"pinduoduo://com.xunmeng.pinduoduo/"+data.url.replace(/https:\/\/.*\//,"")},function(ret){  
                alert(JSON.stringify(ret));  
            });  
        }  
    }
收起阅读 »

【建议】建议HBuilderX左侧项目管理能增加项目分类文件夹功能。

用户建议

【建议】建议HBuilderX左侧项目管理能增加项目分类文件夹功能,不然项目太多看着乱,有测试的,有正式的。

【建议】建议HBuilderX左侧项目管理能增加项目分类文件夹功能,不然项目太多看着乱,有测试的,有正式的。

支付宝小程序获取用户信息

支付宝小程序

<button type="primary" open-type="getAuthorize" scope="userInfo" class="grace-button my-border-radius" @getAuthorize="alyuserinfodata" @error="onAuthError" >
支付宝一键登录
</button>

因为事件大小写问题导致不回调请注意
onGetAuthorize="alyuserinfodata" onError="onAuthError" 改为

@getAuthorize="alyuserinfodata" @error="onAuthError"

继续阅读 »

<button type="primary" open-type="getAuthorize" scope="userInfo" class="grace-button my-border-radius" @getAuthorize="alyuserinfodata" @error="onAuthError" >
支付宝一键登录
</button>

因为事件大小写问题导致不回调请注意
onGetAuthorize="alyuserinfodata" onError="onAuthError" 改为

@getAuthorize="alyuserinfodata" @error="onAuthError"

收起阅读 »

关于HBuilderX 调试app,真机运行后,不能打开webview调试器 参考解决方案

Webview HBuilderX

任意浏览器打开网址栏输入chrome://inspect 点击inspect fallback即可

继续阅读 »

任意浏览器打开网址栏输入chrome://inspect 点击inspect fallback即可

收起阅读 »