- 博客(33)
- 资源 (3)
- 收藏
- 关注
原创 微信扫码页面不跳转登录网站(客户端)
首先需要在微信开放平台注册账号并进行企业认证300块钱。然后创建应用。应用通过审核之后就会拥有一个Appid和AppSecret.然后配置回调域名。剩下的就是开发了。我们可以看到官方文档不管是页面跳转扫码还是iframe内嵌到当前页面扫码确认授权后都会跳转到授权的回调域名下的页面,同时url中会携带网站state和code。通过code和appid、appsecret获取access_token。这也是大部分pc网页端微信扫码登录的实现流程。我们需要在electron构建的桌面应用中实现微信扫码功能,所
2021-04-09 16:08:02 5994
原创 electron项目中调用第三方exe应用
很简单,通过nodejs的子进程child_process执行cmd命令即可需要注意的是文件的路径问题 文件路径为:C:\Program Files (x86)\TeamViewer\TeamViewer.exe可以看到文件路径中含有空格,所以使用前6文件名加上~然而在目录中这种写法可以匹配到2个文件夹,所以~后面有个2代表匹配到的第二个文件夹openExe () { require('child_process').exec('start C:\\Progra~2\\TeamViewer
2021-01-25 11:33:14 6180 5
原创 关于electron中调用dll和c++通讯
最近electron项目需要与c++进行通讯,项目是基于quasar-cli构建的electron程序。参考文档http://nodejs.cn/api/addons.html开始是打算在c++中调用dll动态链接库,然后将c++通过node-gyp编译成在nodejs环境中可用的.node二进制文件。此方法的具体实现可以参考https://yijiebuyi.com/blog/d401dbebf2c1f9491440f1a6fd62f6b4.html跟着文章一步步下来,发现node-gyp编译后的.
2021-01-25 11:20:48 2172 2
原创 学习笔记---ArrayList的使用
数组的长度不可以发生改变但是ArrayList集合的长度是可以随意变化的对于ArrayList来说,有一个尖括号代表泛型。泛型:也就是装在集合当中的所有元素,全都是统一的什么类型。注意:泛型只能是引用类型,不能是基本类型。常用方法:public boolean add(E e): 向集合当中添加元素,参数的类型和泛型一样,返回值代表添加是否成功备注:对于ArrayList集合来说,a...
2020-02-25 14:02:58 182
原创 学习笔记--面向对象与封装(八)构造方法
构造方法是专门用来创建对象的方法,当我们通过关键字new创建对象时,其实就是在调用构造方法。格式:public 类名称(参数类型 参数名){方法体}注意事项:1.构造方法的名称必须和所在的类的名称完全一样,连大小写也要一样2.构造方法不要写返回值,连void也不要3.构造方法不能return一个具体的返回值4.如果没有编写任何构造方法,那么编译器将会默认赠送一个构造方法,没有参数...
2020-02-21 10:14:01 125
原创 学习笔记--面向对象与封装(七)this关键字的作用
当方法的局部变量和类的成员变量重名的时候,根据“就近原则”,优先使用局部变量。如果需要使用本类的成员变量,需要使用格式:this.成员变量名通过谁调用的方法,谁就是this首先我们定义下面一个Person类package com.wadedt.day06.demo05;public class Person { String name;//我自己的名字 //参数name是对方...
2020-02-19 10:03:36 180
原创 学习笔记--面向对象与封装(六)封装的概念
面向对象三大特性:封装、继承、多态封装在java当中的体现:1.方法就是一种封装2.关键字private也是一种封装封装就是将一些细节信息隐藏起来,对于外界不可见package com.wadedt.day06.demo04;public class Demo02Method { public static void main(String[] args){ int[] arr...
2020-02-18 21:14:46 207
原创 学习笔记--面向对象与封装(五)成员变量和局部变量的区别
package com.wadedt.day06.demo04;public class Demo01VariableDifference { String name;//成员变量 public void methodA(){ int num = 20;//局部变量 System.out.println(num);//20 System.out.println(name);...
2020-02-18 19:30:45 159
原创 学习笔记--面向对象与封装(四)一个对象作为方法的参数和返回值
先看代码对象作为方法的参数public class Demo04PhoneParam { public static void main(String[] args){ Phone one = new Phone(); one.brand = "苹果"; one.price = 8388.0; one.color = "土豪金"; method(one); } p...
2020-02-18 18:51:16 237
原创 学习笔记--面向对象与封装(三)一个对象的内存图
我们新建一个手机Phone类,当我们实例化一个手机类并调用其中的成员变量和成员方法的时候,其内存图如下所示首先,程序运行的时候,首先加载的是方法区。会加载class文件,类当中的方法和成员变量保存在方法区,然后找到main方法,然后进栈执行main方法。首先执行第一行Phone one = new Phone();one 变量是一个引用变量,保存的是new phone()的地址值。new...
2020-02-17 15:20:01 137
原创 学习笔记--面向对象与封装(二)
类的定义定义一个类,用来模拟“学生”事物。其中有两个组成部分:属性(是什么):姓名、年龄行为(能做什么):吃饭、睡觉、学习对应到java的类中:成员变量(属性):String name;int age;成员方法(行为)public void eat();public void sleep();public void study();public class Studen...
2020-02-17 14:26:57 105
原创 学习笔记--面向对象与封装(一)
面向过程和面向对象概念面向过程:当需要实现一个功能的时候,每一个具体的步骤都需要亲力亲为,详细处理每一个细节。面向对象:当需要实现一个功能的时候,不关心具体的步骤,而是找一个已经具有该功能的人,来帮我做这件事。实例对比区别面向过程:强调步骤面向对象:强调对象特点将复杂的事情简单化,我们从执行者变成了指挥者。三大基本特征:封装、继承、对态。public class Demo01P...
2020-02-17 13:14:07 138
原创 仿礼物说小程序项目实战——4.首页(3)
贴一下首页完整代码<!--index.wxml--><view class="container"> <view class="top"> <text class="text1">微信送礼新方式</text> <text class="text
2019-03-18 10:28:20 874 5
原创 仿礼物说小程序项目实战——4.首页(2)
配置好了全局的信息之后,我们就开始写单独的页面,找到pages/index/index目录删除默认生成index.wxml的helloworld代码。我们看到头部是一个从红色到橙色渐变的一个块里面包含了两行文字,还有一个操作指南的跳转页面的按钮。根据设计稿我们就来写index.wxml,这里我们发现会有一个操作指南的跳转页面,那么我们需要在app.json的pages属性中添加操作指南页面...
2019-03-15 11:30:49 885
原创 仿礼物说小程序项目实战——4.首页(1)
首先来看一下我们的界面效果图,然后我们根据设计稿来写我们的小程序页面当然了会用到一部分图片素材,我们在项目根目录新建一个images文件夹用于存放我们的图片资源。接下来我们开始正是我们的代码之旅先看下我们的app.json配置,整个项目的颜色风格主题为红色,底部有四个tabbar,分别是首页,抽奖,客服,礼物记录。配置文件如下然后点击上面的编译按钮,在pages目录下会自动生成配置中的...
2019-03-15 10:39:20 472
原创 仿礼物说小程序项目实战——3.小程序目录结构
在我们创建快速启动项目后,我们可以看到项目的目录结构如下图所示pages目录是我们小程序的页面文件存放的目录,每一个页面都有一个独立的文件夹utils目录存放的是我们需要用到的工具类app.js是全局的jsapp.json是全局配置信息app.wxss是全局的样式配置project.config.json是整个项目的配置,包括小程序的appid,项目名等项目相关的信息在pages目录...
2019-03-14 17:49:51 510
原创 仿礼物说小程序项目实战——2.环境搭建和创建项目
下载微信开发者工具申请小程序账号,获取自己的appid打开微信开发者工具,第一次要扫码登录,然后点击小程序项目,添加一个小程序的项目选择项目目录,然后填写自己小程序账号的appid,项目名 简历普通快速启动模板建议勾选,然后点击确定之后我们就可以在开发者工具中看到一个helloworld的小程序,如下图所示创建项目就是这么简单,下一节我们将会从这个helloworld简单的讲一下...
2019-03-14 16:33:46 353
原创 仿礼物说小程序项目实战——1.项目介绍分析
项目功能分析前置知识html 能独立写HTML最好有半年的实践经验css 能独立写cssjs 有一定的基础如果没有一点基础知识,你会感觉到什么是绝望!!!功能介绍用户进入小程序,可以挑选礼物,可以添加多个礼物,然后生成礼物红包发送给微信好友,我们定义了三种送礼的方式直接送礼,将生成的礼物红包发送给好友,好友领取直接获得礼包定时开奖,指定时间之后随机分配礼包满人开奖,参与...
2019-03-14 15:26:01 538
原创 es6中set的使用
set是一个集合,不同于数组,数组中可以拥有相同的值,set中不能存相同的值。let books = new Set();//新建一个新的set集合books.add("javascript");//往set集合中加一个值console.log(books);//Set(1) {"javascript"}books.add("html5");console.log(books);//Se...
2019-03-13 11:10:12 370
原创 es6中类的继承
类的继承关键字extendsclass Person{ constructor(name,age){//构造器 this.name = name; this.age = age; } info(){ return `我的姓名是${this.name},今年${this.age}岁了!`; }}class Chinese extends Person{// constru...
2019-03-13 10:19:18 427
原创 es6中类class的概念
有了类的概念,js才算是真的从面相过程走向了面向对象那么在es6中如何使用class呢?class Student{//类名的第一个单词大写 constructor(book){//构造器,在初始化实例的时候调用 this.book= book; } study(){ console.log(this.book); }}let stu1 = new Student(&quot;jav...
2019-03-12 16:33:05 851 1
原创 迭代器生成器
function* books(){ yield "javascript"; yield "html5"};let mybook = books();console.log(mybook.next());//{value: "javascript", done: false}console.log(mybook.next());//{value: "html5", done: fals...
2019-03-12 16:13:46 148
原创 设置对象的prototype以及super的使用
let book1 = { getbook(){ return &quot;javascript&quot;; }};let book2 = { getbook(){ return &quot;html5&quot;; }}let book = Object.create(book1);console.log(book.getbook());//javascriptconsole.log(Object.get...
2019-03-12 13:56:06 589
原创 把对象的值复制到另一个对象
let books = {};Object.assign( books,//源对象 {"js":"javascript"}//要插入的对象);console.log(books);//{js: "javascript"}Object.assign( books, {"h5":"html5"});console.log(books);//{js: "javascript"
2019-03-12 13:19:58 1535
原创 比较两个值是否相等
Object.is('a','a');//truelet num1 = 1;let num2 = 1;Object.is(num1,num2);//trueObject.is(NaN,NaN);//trueObject.is(-0,+0);//false
2019-03-12 13:09:47 415
原创 ES6对象表达式和添加属性
我们定义了2个变量,books对象的属性刚好和定义的变量名相同,则可以简写。如果对象属性study是个方法,则可以简写为study(){}let books = { study:function(){ }};let js = "javascript", h5 = "html4";let books = { js,//如果属性名和变量名字一样,并且属性的值就是变量的值可以这样简写...
2019-03-12 11:10:18 11944
原创 箭头函数=>
直接上代码let books = js =&gt; js;//箭头左边是的函数传递的参数,箭头右边返回的是函数的返回值books("javascript");如上代码机会返回javascript如果这个函数有多个参数的话就用()let books = (js,h5) =&gt; js + h5;//箭头左边是的函数传递的参数,箭头右边返回的是函数的返回值books("javascri...
2019-03-11 17:40:12 437
原创 解构参数
一个函数比方说有2个必填的参数,还有一个对象结构的参数,代码如下function books(js,h5,{address,company} = {}){ console.log(js,h5,address,company);}books("javascript","html",{"address":"上海","company&q
2019-03-11 17:14:34 2285
原创 ...展开操作符spread和剩余操作符Rest
展开操作符…let books = ['javascript','html'];console.log(books);console.log(...books);直接输出books是一个数组,使用展开操作符…books之后,我们看到,输出的是数组中每一项的值接下来再来看一下let books = ['javascript','html'];let books1 = ['css3'...
2019-03-11 16:37:44 456
原创 函数参数的默认值
function books(js="javascript",h5="html5"){ return `${js} and ${h5}`}console.log(books());console.log(books("ECMAScript","html4"));在这里,我们定义了一个函数books,这个函数需要接收2个参数,并且我们给这个参数都设置了默
2019-03-11 16:16:10 1135
原创 ES6判断字符串中是否包含其他字符串
let js = 'javascript', h5 = 'html5', c3 = 'css3';let books = `我要学习的书籍是${js}和${h5}以及${c3}`;books.startsWith("我要");//truebooks.endsWith("css3");//truebooks.includesWith("书籍");//truebooks.includes..
2019-03-11 15:49:10 8750
原创 模板字符串
我们定义了三个字符串,需要将三个字符串插入到一句话当中,那么我们需要一段一段的拼接字符串let js = 'javascript', h5 = 'html5', c3 = 'css3';let books = &quot;我要学习的书籍是&quot;+js+&quot;和&quot;+h5+&quot;以及&quot;+c3;console.log(books);es6中可以使用模板字符串来写le
2019-03-11 15:04:46 542
原创 ES6解构数组、解构对象以及let声明变量
比如,我们定义了一个数组,我们要把数组中的每一项都赋值给一个对应的变量,以前的写法是这样的,我们需要一个一个的去赋值。function books(){ return ['javascript','html5','css3'];}{ let js = books()[0]; let h5 = books()[1]; let c3 = books()[2]; console.log(...
2019-03-11 11:08:13 1388
wxlogin-nodejs.zip
2021-04-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人