HBuilderX

HBuilderX

极客开发工具
uni-app

uni-app

开发一次,多端覆盖
uniCloud

uniCloud

云开发平台
HTML5+

HTML5+

增强HTML5的功能体验
MUI

MUI

上万Star的前端框架

C++的35个技巧阅读笔记(一)

短视频

1.仔细区别指针和引用
1、引用必须代表某个对象,没有所谓null引用,因此必须有初值。
2、使用引用可能会比使用指针更有效率,因为使用引用之前不需要测试其有效性。
3、指针可以被重新赋值,指向另一个对象,指针 却总是指向(代表)它最初获得的那个对象。

string s1("Nancy");
string s2("Clancy");
string& rs = s1; //rs代表s1
string *ps = &s1; //ps指向s1
rs = s2; //rs任然代表s1,但是s1的值现在变成了“Clancy”
ps = &s2; //ps现在指向s2,s1没有变化。
1
2
3
4
5
6
使用引用:
1、确定“总是会代表某个对象”,而且“一旦代表了该对象就不能够再改变”。
2、当实现某些操作符时候,例如:operator[] ,必须返回某种“能够被当作assignment赋值对象”的东西:引用。
3、当实现一个操作符而其语法需求无法由pointers 达成,就选择reference,其他任何时候,请采用pointers。
使用指针:
需要考虑“不指向任何对象”的可能性,或考虑“在不同时间指向不同对象”的能力。

不同点:
1、指针是一个变量,引用是别名。
2、对引用求地址,就是对目标变量求地址。即引用名是目标变量名的一个别名。引用在定义上是说引用不占据任何内存空间,但是编译器在一般将其实现为const指针,即指向位置不可变的指针,所以引用实际上与一般指针同样占用内存。。3、指针有多级,但是引用只能是一级(int **p;合法 而 int &&a是不合法的)。
4、“sizeof引用”得到的是所指向的变量(对象)的大小,而”sizeof指针”得到的是指针本身的大小。
5、指针和引用的自增(++)运算意义不一样;
6、引用常见的使用用途:作为函数的参数、函数的返回值。

继续阅读 »

1.仔细区别指针和引用
1、引用必须代表某个对象,没有所谓null引用,因此必须有初值。
2、使用引用可能会比使用指针更有效率,因为使用引用之前不需要测试其有效性。
3、指针可以被重新赋值,指向另一个对象,指针 却总是指向(代表)它最初获得的那个对象。

string s1("Nancy");
string s2("Clancy");
string& rs = s1; //rs代表s1
string *ps = &s1; //ps指向s1
rs = s2; //rs任然代表s1,但是s1的值现在变成了“Clancy”
ps = &s2; //ps现在指向s2,s1没有变化。
1
2
3
4
5
6
使用引用:
1、确定“总是会代表某个对象”,而且“一旦代表了该对象就不能够再改变”。
2、当实现某些操作符时候,例如:operator[] ,必须返回某种“能够被当作assignment赋值对象”的东西:引用。
3、当实现一个操作符而其语法需求无法由pointers 达成,就选择reference,其他任何时候,请采用pointers。
使用指针:
需要考虑“不指向任何对象”的可能性,或考虑“在不同时间指向不同对象”的能力。

不同点:
1、指针是一个变量,引用是别名。
2、对引用求地址,就是对目标变量求地址。即引用名是目标变量名的一个别名。引用在定义上是说引用不占据任何内存空间,但是编译器在一般将其实现为const指针,即指向位置不可变的指针,所以引用实际上与一般指针同样占用内存。。3、指针有多级,但是引用只能是一级(int **p;合法 而 int &&a是不合法的)。
4、“sizeof引用”得到的是所指向的变量(对象)的大小,而”sizeof指针”得到的是指针本身的大小。
5、指针和引用的自增(++)运算意义不一样;
6、引用常见的使用用途:作为函数的参数、函数的返回值。

收起阅读 »

用uniapp开发的app一次性上架appstore和google play,开心一下

GooglePlay 苹果审核 Appstore

以为需要多修改几次呢,出乎意料的顺利,一次提交就上架了,开心一下。
同时也让更多人放心使用uniapp,上架不是问题呢,不会因为非原生就拒绝的

类型:后端基于discuz的社区帖子
uniapp: 纯nvue

appstore 地址 https://apps.apple.com/cn/app/id1560534288

继续阅读 »

以为需要多修改几次呢,出乎意料的顺利,一次提交就上架了,开心一下。
同时也让更多人放心使用uniapp,上架不是问题呢,不会因为非原生就拒绝的

类型:后端基于discuz的社区帖子
uniapp: 纯nvue

appstore 地址 https://apps.apple.com/cn/app/id1560534288

收起阅读 »

四点多种打包一个小时还没好,请安排付费通道

云打包

着急打包的时候等一个小时还没好,我觉得可以做个付费打包通道

着急打包的时候等一个小时还没好,我觉得可以做个付费打包通道

Vite2.x+Electron12整合开发vue3.0直播+聊天+小视频应用

项目介绍

之前有给大家分享一个electron+vue3开发聊天程序,这次分享最新研发的vite2+electron仿抖音短视频应用。

Vite2-ElectronDouYin:基于vite.js搭建electron+vue3仿抖音短视频/直播程序。使用了vite2+vue3+electron12+vant3.x+swiper等技术开发实现。支持上下左右拖拽滑动、键盘上下键滑动切换小视频。

electron11+vue3.0高仿QQ|微信聊天桌面版

img

实现了类似抖音聊天功能,支持图片预览、链接/视频新窗口查看、截图/红包等功能。

img

技术栈

  • 编码+技术:vscode / vite2.x+vue3.0+vuex4+vue-router@4
  • 跨端框架:electron12.0.1
  • UI组件库:vant3 (有赞vue3移动端组件库)
  • 弹窗组件:v3popup(vue3自定义弹窗组件)
  • 打包工具:vue-cli-plugin-electron-builder

img

项目结构目录

img

img

img

img

img

img

img

img

img

img

img

img

img

img

img

img

img

img

vite.config.js配置

import { defineConfig } from 'vite'  
import vue from '@vitejs/plugin-vue'  
import path from 'path'  

// https://vitejs.dev/config/  
export default defineConfig({  
  plugins: [vue()],  

  // base: '/',  
  // mode: 'development' //production  
  build: {  
    /**  
     * 输出文件目录  
     * @default dist(默认)  
     */  
    // outDir: 'target',  
  },  

  // 环境配置  
  server: {  
    // 端口  
    port: 3000,  

    // 是否浏览器自动打开  
    open: false,  

    // 开启https  
    https: false,  

    // 代理配置  
    proxy: {  
      // ...  
    }  
  },  

  resolve: {  
    // 设置路径别名  
    alias: {  
      '@': path.resolve(__dirname, '../src'),  
    }  
  }  
})

vite2.x+electron自定义顶部菜单栏

为了使得项目整体UI的一致性,采用了无边框模式。顶部导航栏采用自定义拖拽实现。

img

组件进行封装后,通过如下方式调用即可。

<WinBar bgcolor="transparent" transparent>  
    <template #wbtn>  
        <a class="wbtn" @click="isShowPersonalCard=true"><i class="iconfont icon-erweima"></i></a>  
        <a class="wbtn" @click="isShowSideMenu=true"><i class="iconfont icon-menu"></i></a>  
    </template>  
</WinBar>  

<WinBar bgcolor="linear-gradient(to right, #36384a, #36384a)">  
    <template #title>视频预览</template>  
    <template #wbtn>  
        <a class="wbtn" @click="handleDownLoad"><i class="iconfont icon-down"></i></a>  
    </template>  
</WinBar>

至于具体如何实现,由于之前有过相关的分享文章,感兴趣的可以去看下。

Electron+vue3.x自定义顶部导航栏

Electron12自定义系统托盘|托盘图标闪烁

electron文档中有提供Menu和Tray,所以创建系统托盘非常简单。
img

createTray() {  
    const trayMenu = Menu.buildFromTemplate([  
        {  
            label: '我在线上', icon: path.join(__dirname, '../resource/icon-online.png'),  
            click: () => null  
        },  
        {  
            label: '隐身', icon: path.join(__dirname, '../resource/icon-invisible.png'),  
            click: () => null  
        },  
        {type: 'separator'},  
        {  
            label: '关闭消息闪动', click: () => {  
                this.flashTray(false)  
            }  
        },  
        {type: 'separator'},  
        {  
            label: '显示窗口', click: () => {  
                try {  
                    for(let i in this.winLs) {  
                        let win = this.getWin(i)  
                        if(!win) return  
                        if(win.isMinimized()) win.restore()  
                        win.show()  
                    }  
                } catch (error) {  
                    console.log(error)  
                }  
            }  
        },  
        {  
            label: '退出', click: () => {  
                try {  
                    for(let i in this.winLs) {  
                        let win = this.getWin(i)  
                        if(win) win.webContents.send('win-logout')  
                    }  
                    app.quit()  
                } catch (error) {  
                    console.log(error)  
                }  
            }  
        },  
    ])  
    this.tray = new Tray(this.trayIco1)  
    this.tray.setContextMenu(trayMenu)  
    this.tray.setToolTip(app.name)  
}

img

img

事先准备好两张大小一样的ico图标,其中一个透明即可。通过定时器来控制闪烁效果。

// 托盘图标闪烁  
flashTray(flash) {  
    let hasIco = false  

    if(flash) {  
        if(this.flashTimer) return  
        this.flashTimer = setInterval(() => {  
            this.tray.setImage(hasIco ? this.trayIco1 : this.trayIco2)  
            hasIco = !hasIco  
        }, 500)  
    }else {  
        if(this.flashTimer) {  
            clearInterval(this.flashTimer)  
            this.flashTimer = null  
        }  
        this.tray.setImage(this.trayIco1)  
    }  
}  
// 销毁托盘图标  
destoryTray() {  
    this.flashTray(false)  
    this.tray.destroy()  
    this.tray = null  
}

vite2.x+electron打包配置参数

在项目根目录下新建一个electron-builder.json打包配置文件。

img

/**    
 * @Desc     electron打包配置    
 * @Create   andy by 2021-03  Q:282310962  wx:xy190310    
 */    

{  
    "productName": "electron-douyin", //项目名称 打包生成exe的前缀名  
    "appId": "com.example.electrondouyin", //包名  
    "compression": "maximum", //store|normal|maximum 打包压缩情况(store速度较快)  
    "artifactName": "${productName}-${version}-${platform}-${arch}.${ext}", //打包后安装包名称  
    // "directories": {  
    //     "output": "build", //输出文件夹(默认dist_electron)  
    // },  
    "asar": false, //asar打包  
    // 拷贝静态资源目录到指定位置(如根目录下的static文件夹会拷贝至打包后的dist_electron/win-unpacked/resources/static目录)  
    "extraResources": [  
        {  
            "from": "/static",  
            "to": "static"  
        },  
    ],  
    "nsis": {  
        "oneClick": false, //一键安装  
        "allowToChangeInstallationDirectory": true, //允许修改安装目录  
        "perMachine": true, //是否开启安装时权限设置(此电脑或当前用户)  
        "artifactName": "${productName}-${version}-${platform}-${arch}-setup.${ext}", //打包后安装包名称  
        "deleteAppDataOnUninstall": true, //卸载时删除数据  
        "createDesktopShortcut": true, //创建桌面图标  
        "createStartMenuShortcut": true, //创建开始菜单图标  
        "shortcutName": "ElectronDouYin", //桌面快捷键图标名称  
    },  
    "win": {  
        "icon": "/static/shortcut.ico", //图标路径  
    }  
}

Okey,整合vite.js+electron跨端开发仿制抖音EXE短视频就分享到这里。

链接:https://www.imooc.com/article/316009
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

继续阅读 »

项目介绍

之前有给大家分享一个electron+vue3开发聊天程序,这次分享最新研发的vite2+electron仿抖音短视频应用。

Vite2-ElectronDouYin:基于vite.js搭建electron+vue3仿抖音短视频/直播程序。使用了vite2+vue3+electron12+vant3.x+swiper等技术开发实现。支持上下左右拖拽滑动、键盘上下键滑动切换小视频。

electron11+vue3.0高仿QQ|微信聊天桌面版

img

实现了类似抖音聊天功能,支持图片预览、链接/视频新窗口查看、截图/红包等功能。

img

技术栈

  • 编码+技术:vscode / vite2.x+vue3.0+vuex4+vue-router@4
  • 跨端框架:electron12.0.1
  • UI组件库:vant3 (有赞vue3移动端组件库)
  • 弹窗组件:v3popup(vue3自定义弹窗组件)
  • 打包工具:vue-cli-plugin-electron-builder

img

项目结构目录

img

img

img

img

img

img

img

img

img

img

img

img

img

img

img

img

img

img

vite.config.js配置

import { defineConfig } from 'vite'  
import vue from '@vitejs/plugin-vue'  
import path from 'path'  

// https://vitejs.dev/config/  
export default defineConfig({  
  plugins: [vue()],  

  // base: '/',  
  // mode: 'development' //production  
  build: {  
    /**  
     * 输出文件目录  
     * @default dist(默认)  
     */  
    // outDir: 'target',  
  },  

  // 环境配置  
  server: {  
    // 端口  
    port: 3000,  

    // 是否浏览器自动打开  
    open: false,  

    // 开启https  
    https: false,  

    // 代理配置  
    proxy: {  
      // ...  
    }  
  },  

  resolve: {  
    // 设置路径别名  
    alias: {  
      '@': path.resolve(__dirname, '../src'),  
    }  
  }  
})

vite2.x+electron自定义顶部菜单栏

为了使得项目整体UI的一致性,采用了无边框模式。顶部导航栏采用自定义拖拽实现。

img

组件进行封装后,通过如下方式调用即可。

<WinBar bgcolor="transparent" transparent>  
    <template #wbtn>  
        <a class="wbtn" @click="isShowPersonalCard=true"><i class="iconfont icon-erweima"></i></a>  
        <a class="wbtn" @click="isShowSideMenu=true"><i class="iconfont icon-menu"></i></a>  
    </template>  
</WinBar>  

<WinBar bgcolor="linear-gradient(to right, #36384a, #36384a)">  
    <template #title>视频预览</template>  
    <template #wbtn>  
        <a class="wbtn" @click="handleDownLoad"><i class="iconfont icon-down"></i></a>  
    </template>  
</WinBar>

至于具体如何实现,由于之前有过相关的分享文章,感兴趣的可以去看下。

Electron+vue3.x自定义顶部导航栏

Electron12自定义系统托盘|托盘图标闪烁

electron文档中有提供Menu和Tray,所以创建系统托盘非常简单。
img

createTray() {  
    const trayMenu = Menu.buildFromTemplate([  
        {  
            label: '我在线上', icon: path.join(__dirname, '../resource/icon-online.png'),  
            click: () => null  
        },  
        {  
            label: '隐身', icon: path.join(__dirname, '../resource/icon-invisible.png'),  
            click: () => null  
        },  
        {type: 'separator'},  
        {  
            label: '关闭消息闪动', click: () => {  
                this.flashTray(false)  
            }  
        },  
        {type: 'separator'},  
        {  
            label: '显示窗口', click: () => {  
                try {  
                    for(let i in this.winLs) {  
                        let win = this.getWin(i)  
                        if(!win) return  
                        if(win.isMinimized()) win.restore()  
                        win.show()  
                    }  
                } catch (error) {  
                    console.log(error)  
                }  
            }  
        },  
        {  
            label: '退出', click: () => {  
                try {  
                    for(let i in this.winLs) {  
                        let win = this.getWin(i)  
                        if(win) win.webContents.send('win-logout')  
                    }  
                    app.quit()  
                } catch (error) {  
                    console.log(error)  
                }  
            }  
        },  
    ])  
    this.tray = new Tray(this.trayIco1)  
    this.tray.setContextMenu(trayMenu)  
    this.tray.setToolTip(app.name)  
}

img

img

事先准备好两张大小一样的ico图标,其中一个透明即可。通过定时器来控制闪烁效果。

// 托盘图标闪烁  
flashTray(flash) {  
    let hasIco = false  

    if(flash) {  
        if(this.flashTimer) return  
        this.flashTimer = setInterval(() => {  
            this.tray.setImage(hasIco ? this.trayIco1 : this.trayIco2)  
            hasIco = !hasIco  
        }, 500)  
    }else {  
        if(this.flashTimer) {  
            clearInterval(this.flashTimer)  
            this.flashTimer = null  
        }  
        this.tray.setImage(this.trayIco1)  
    }  
}  
// 销毁托盘图标  
destoryTray() {  
    this.flashTray(false)  
    this.tray.destroy()  
    this.tray = null  
}

vite2.x+electron打包配置参数

在项目根目录下新建一个electron-builder.json打包配置文件。

img

/**    
 * @Desc     electron打包配置    
 * @Create   andy by 2021-03  Q:282310962  wx:xy190310    
 */    

{  
    "productName": "electron-douyin", //项目名称 打包生成exe的前缀名  
    "appId": "com.example.electrondouyin", //包名  
    "compression": "maximum", //store|normal|maximum 打包压缩情况(store速度较快)  
    "artifactName": "${productName}-${version}-${platform}-${arch}.${ext}", //打包后安装包名称  
    // "directories": {  
    //     "output": "build", //输出文件夹(默认dist_electron)  
    // },  
    "asar": false, //asar打包  
    // 拷贝静态资源目录到指定位置(如根目录下的static文件夹会拷贝至打包后的dist_electron/win-unpacked/resources/static目录)  
    "extraResources": [  
        {  
            "from": "/static",  
            "to": "static"  
        },  
    ],  
    "nsis": {  
        "oneClick": false, //一键安装  
        "allowToChangeInstallationDirectory": true, //允许修改安装目录  
        "perMachine": true, //是否开启安装时权限设置(此电脑或当前用户)  
        "artifactName": "${productName}-${version}-${platform}-${arch}-setup.${ext}", //打包后安装包名称  
        "deleteAppDataOnUninstall": true, //卸载时删除数据  
        "createDesktopShortcut": true, //创建桌面图标  
        "createStartMenuShortcut": true, //创建开始菜单图标  
        "shortcutName": "ElectronDouYin", //桌面快捷键图标名称  
    },  
    "win": {  
        "icon": "/static/shortcut.ico", //图标路径  
    }  
}

Okey,整合vite.js+electron跨端开发仿制抖音EXE短视频就分享到这里。

链接:https://www.imooc.com/article/316009
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

收起阅读 »

打包时提示:该账号绑定的手机号被多个账号同时使用 这个问题怎么处理

打包时提示:该账号绑定的手机号被多个账号同时使用 这个问题怎么处理

打包时提示:该账号绑定的手机号被多个账号同时使用 这个问题怎么处理

6 名黑客因盗取区块链货币被抓,涉案 1450 万

法律科普

3月25日,南昌市公安局青云谱分局通报一起利用黑客网络技术盗取区块链货币的新型网络犯罪案件,实现了对案件上下游犯罪“全链条”的有力打击。截至目前,该案已抓获6名涉案犯罪嫌疑人。

虚拟货币 不翼而飞

2021年2月26日,辖区群众黄某到青云谱分局报案称:2月23日18时许,突然发现自己手机号码被他人莫名挂失,继而发现与手机号码捆绑登录的“雷达网”账户中的区块链货币(雷达币和比特币)被人转走,被盗虚拟货币折合人民币价值近1450万元。

接警后,分局迅速立案侦查,办案民警在侦查中初步发现受害人损失的是虚拟货币,且犯罪嫌疑人未与受害人发生任何实质性接触,也未留下电话、微信等任何联系方式。犯罪嫌疑人如何在受害人没有任何操作的情况下,盗取安全性较高的虚拟货币账户,而且几乎没有留下作案痕迹,此案的发生实属罕见

抽丝剥茧 锁定嫌疑

面对难题,专案组民警通过摸排走访、海量资料分析,结合对宾馆和手机运营商营业厅人员的走访调查发现:案发前,曾有5名江苏连云港籍男女开车窜至南昌,持有伪造的受害人身份证件挂失、补办受害人手机卡的犯罪踪迹。 获取初步线索后,专案组连续攻坚,多警种联合作战,成功锁定涉案嫌疑人基本信息,案件侦查工作取得重大突破。

转战出击 抓获黑客

根据研判线索,专案组连夜奔袭上千公里到达江苏连云港,将嫌疑人轨迹逐一落地——3月8日,专案组在连云港市区、灌云县等地陆续抓获该4名嫌疑人,并从犯罪嫌疑人家中缴获了140余万现金,以及大量作案用手机、电脑以及各种伪造证件;3月15日,专案组民警又赴广东中山、东莞分别抓获另2名犯罪嫌疑人。

经查,犯罪嫌疑人利用购买的黑客技术盗取虚拟货币交易平台后台用户信息,再雇佣人伪造证件冒充受害人补办平台账户所捆绑手机号码,又通过补办的手机号接受平台登录验证码,最后登陆受害人存有虚拟币的账户盗取账户内的虚拟货币。专案组在前期侦查的基础上,逐步挖掘、固定该网络犯罪团伙的证据链条,斩断了该犯罪团伙盗取后台数据、制作假证、冒充受害人补办手机卡,利用手机验证码登录平台进行盗窃的犯罪链条。至此,利用黑客技术盗取虚拟货币的特大新型网络犯罪案件实现全链条破案

目前, 6名犯罪嫌疑人已依法刑事拘留,案件在进一步侦办中。

此文章【来源: 南昌公安】,转载自腾讯新闻,如有不当联系邮箱:pufa@dcloud.io 。
原文链接

继续阅读 »

3月25日,南昌市公安局青云谱分局通报一起利用黑客网络技术盗取区块链货币的新型网络犯罪案件,实现了对案件上下游犯罪“全链条”的有力打击。截至目前,该案已抓获6名涉案犯罪嫌疑人。

虚拟货币 不翼而飞

2021年2月26日,辖区群众黄某到青云谱分局报案称:2月23日18时许,突然发现自己手机号码被他人莫名挂失,继而发现与手机号码捆绑登录的“雷达网”账户中的区块链货币(雷达币和比特币)被人转走,被盗虚拟货币折合人民币价值近1450万元。

接警后,分局迅速立案侦查,办案民警在侦查中初步发现受害人损失的是虚拟货币,且犯罪嫌疑人未与受害人发生任何实质性接触,也未留下电话、微信等任何联系方式。犯罪嫌疑人如何在受害人没有任何操作的情况下,盗取安全性较高的虚拟货币账户,而且几乎没有留下作案痕迹,此案的发生实属罕见

抽丝剥茧 锁定嫌疑

面对难题,专案组民警通过摸排走访、海量资料分析,结合对宾馆和手机运营商营业厅人员的走访调查发现:案发前,曾有5名江苏连云港籍男女开车窜至南昌,持有伪造的受害人身份证件挂失、补办受害人手机卡的犯罪踪迹。 获取初步线索后,专案组连续攻坚,多警种联合作战,成功锁定涉案嫌疑人基本信息,案件侦查工作取得重大突破。

转战出击 抓获黑客

根据研判线索,专案组连夜奔袭上千公里到达江苏连云港,将嫌疑人轨迹逐一落地——3月8日,专案组在连云港市区、灌云县等地陆续抓获该4名嫌疑人,并从犯罪嫌疑人家中缴获了140余万现金,以及大量作案用手机、电脑以及各种伪造证件;3月15日,专案组民警又赴广东中山、东莞分别抓获另2名犯罪嫌疑人。

经查,犯罪嫌疑人利用购买的黑客技术盗取虚拟货币交易平台后台用户信息,再雇佣人伪造证件冒充受害人补办平台账户所捆绑手机号码,又通过补办的手机号接受平台登录验证码,最后登陆受害人存有虚拟币的账户盗取账户内的虚拟货币。专案组在前期侦查的基础上,逐步挖掘、固定该网络犯罪团伙的证据链条,斩断了该犯罪团伙盗取后台数据、制作假证、冒充受害人补办手机卡,利用手机验证码登录平台进行盗窃的犯罪链条。至此,利用黑客技术盗取虚拟货币的特大新型网络犯罪案件实现全链条破案

目前, 6名犯罪嫌疑人已依法刑事拘留,案件在进一步侦办中。

此文章【来源: 南昌公安】,转载自腾讯新闻,如有不当联系邮箱:pufa@dcloud.io 。
原文链接

收起阅读 »

能提供swift版本的离线打包和插件开发教程吗

iOS离线打包_ 百度语音配置

能提供swift版本的离线打包和插件开发教程吗

能提供swift版本的离线打包和插件开发教程吗

准备报名参加插件大赛,可拖拽的小程序页面编辑器

插件大赛

官方活动又开始了插件大赛,这届打算参加一下,准备开发一个可拖拽的小程序页面编辑器。主要先实现以下功能:
1、基于uniCloud admin 框架,在这个基础上开发个插件,用于后台在线拖拽编辑,用户、权限等系统都是现成的,主要精力放在拖拽编辑器上,编辑好的页面保存到uniCloud上,充分利用现有dcloud平台上的资源。
2、编辑器上自带一些常用模块,并提供一个插件机制,便于自行扩展模块。
3、编辑好的页面,可以在uniApp小程序项目上进行使用,理论上可以实现后端编辑,小程序端实时生效。
想法和架子已经有了,接下来就是写代码实现,希望进度赶得上参赛。

===========================================================================
2021-03-30
完成拖拽组件到编辑器,并实现上下拖拽排序。

继续阅读 »

官方活动又开始了插件大赛,这届打算参加一下,准备开发一个可拖拽的小程序页面编辑器。主要先实现以下功能:
1、基于uniCloud admin 框架,在这个基础上开发个插件,用于后台在线拖拽编辑,用户、权限等系统都是现成的,主要精力放在拖拽编辑器上,编辑好的页面保存到uniCloud上,充分利用现有dcloud平台上的资源。
2、编辑器上自带一些常用模块,并提供一个插件机制,便于自行扩展模块。
3、编辑好的页面,可以在uniApp小程序项目上进行使用,理论上可以实现后端编辑,小程序端实时生效。
想法和架子已经有了,接下来就是写代码实现,希望进度赶得上参赛。

===========================================================================
2021-03-30
完成拖拽组件到编辑器,并实现上下拖拽排序。

收起阅读 »

mac系统调用内置nmp免去安装node

Mac Mac版 npmvu node

鉴于更新了新版本系统 安装 node 总报错
看了一下hbx自带了node
但是无法正常引用

Applications/HBuilderX.app/Contents/HBuilderX/plugins/npm/npm

我看了一下 第10行调用的竟然是.exe文件 mac系统肯定没有这个

NODE_EXE="$basedir/node.exe"  
/// 改成 目录内node  
NODE_EXE="/Applications/HBuilderX.app/Contents/HBuilderX/plugins/node/node"

这样就可以正常使用了 简单粗暴
/Applications/HBuilderX.app/Contents/HBuilderX/plugins/npm/npm -v
5.6.0
完美

继续阅读 »

鉴于更新了新版本系统 安装 node 总报错
看了一下hbx自带了node
但是无法正常引用

Applications/HBuilderX.app/Contents/HBuilderX/plugins/npm/npm

我看了一下 第10行调用的竟然是.exe文件 mac系统肯定没有这个

NODE_EXE="$basedir/node.exe"  
/// 改成 目录内node  
NODE_EXE="/Applications/HBuilderX.app/Contents/HBuilderX/plugins/node/node"

这样就可以正常使用了 简单粗暴
/Applications/HBuilderX.app/Contents/HBuilderX/plugins/npm/npm -v
5.6.0
完美

收起阅读 »

建议uniapp tabBar项目如果不设置text的话,就让iconPath高度占满tabBar

tabbar

建议uniapp tabBar项目如果不设置text的话,就让iconPath高度占满tabBar

建议uniapp tabBar项目如果不设置text的话,就让iconPath高度占满tabBar

qq392716797 收钱不干活,小程序反编译的

微信小程序

qq392716797帮你反编译获取小程序源码 它是要收费的
收费了不干活;
收费了把你拉进黑名单

QQ截图如下:
a

b

c

d

e

图片打开方式:右键新窗口打开就行了;

重点图片还是补充下:


然后就删我QQ好友了;

首先:
他说的是小小心意,然后发了2元钱红包,这个钱是有点少,我承认;

但是后面坚持要18元钱,我就觉得此人不太靠谱,不太想通过他解决问题;

然后就骂人,删除好友;

聊天记录,还是在消息管理器中发现的;

至于问题的解决办法,已经在github找到答案了

github 的地址是:
/data/data/com.tencent.mm/MicroMsg/文件夹下没有/appbrand/pkg/ 这个文件夹 · Issue #7 · Cherrison/CrackMinApp

这是他的博客地址:
(3条消息) 反编译获取任何微信小程序源码——看这篇就够了_敏哥的博客-CSDN博客

继续阅读 »

qq392716797帮你反编译获取小程序源码 它是要收费的
收费了不干活;
收费了把你拉进黑名单

QQ截图如下:
a

b

c

d

e

图片打开方式:右键新窗口打开就行了;

重点图片还是补充下:


然后就删我QQ好友了;

首先:
他说的是小小心意,然后发了2元钱红包,这个钱是有点少,我承认;

但是后面坚持要18元钱,我就觉得此人不太靠谱,不太想通过他解决问题;

然后就骂人,删除好友;

聊天记录,还是在消息管理器中发现的;

至于问题的解决办法,已经在github找到答案了

github 的地址是:
/data/data/com.tencent.mm/MicroMsg/文件夹下没有/appbrand/pkg/ 这个文件夹 · Issue #7 · Cherrison/CrackMinApp

这是他的博客地址:
(3条消息) 反编译获取任何微信小程序源码——看这篇就够了_敏哥的博客-CSDN博客

收起阅读 »