- 博客(86)
- 收藏
- 关注
原创 STEAM科学-电磁
磁基本磁铁能够吸引铁、钴、镍等物质吸引能力最强的两个部位叫磁极同名磁极相互排斥,异名磁极相互吸引一些物体在磁体或电流作用下会获得磁性,这种现象叫磁化磁场看不见摸不着,但是真实存在的磁感线是不存在的,是人们为了描述磁场建立的模型箭头表示磁场方向,疏密程度表示磁场强弱外部磁感线方向:从N极到S极地磁电生磁奥斯特实验电流的磁效应电流周围存在磁场通电导线周围存在磁场电流的磁场方向跟电流的方向有关下图为通电螺线管安培定则(右手螺旋定则)伸出右手,四指的方向和电流的方向保持一
2022-04-02 18:17:18
554
原创 STEAM科学-声学知识点
声音的产生声音是由于物体的震动而产生的。振动停,发声停。声源:正在发声的物体叫声源。笛子是由里面的空气柱振动,琴是琴弦振动,人是声带在振动…声音的传播介质:声音的传播需要介质,声音不能在真空中传播。速度:通常情况下,V气<V液<V固,在15℃的空气中v = 340m/s听到回音的条件:声音从传播出去到反射回来所用的时间大于0.1s声音的特性音色:不同的物体发出的声音具有不同的特色叫音色由发声体的材料、结构、振动方式等决定音调:声音的高低--------》装不同水的杯子、编钟
2022-04-02 17:13:51
751
原创 51单片机(1)-开发工具介绍及软件安装
Keil5用于编写程序功能代码的编辑器编辑器下载选择C51安装目录:路径不要选择含中文或其他特殊字符勾选去掉破解破解程序需关闭杀毒软件,打开后如下界面打开Keil5,以管理员模式运行File -> License Management复制Computer ID粘贴CID -> 生成 -> 复制ID code粘贴ID code -> Add LIC -> 当下方显示LIC Added Sucessfully表示激活成功STC-ISP
2022-04-02 16:08:42
7426
原创 电路基础知识
电路的状态并联、短路与断路满足欧姆定律:U/I = RI表示电流。电流的强弱用电流强度来描述,电流强度是单位时间内通过导体某一横截面的电量。U代表电压(voltage),是衡量单位电荷在静电场中由于电势不同所产生的能量差的物理量。其大小等于单位正电荷因受电场力作用从A点移动到B点所做的功,电压的方向规定为从高电位指向低电位的方向。V是伏特。伏特是国际单位制中表示电压的基本单位,简称伏,符号V。R是电阻。电阻(Resistance,通常用“R”表示),是一个物理量,在物理学中表示导体对电流阻碍作
2022-04-02 15:16:08
1043
原创 python学习笔记-Turtle库的使用
turtle库是海龟绘图库,可以想象成一个小乌龟在横轴为x,数轴为y的画纸上爬行。1.画布设置画布大小turtle.screensize(canvwidth=None, canvheight=None, bg=None),参数分别为画布的宽(单位像素), 高, 背景颜色。t.screensize(200,200,'blue')2.画笔在画布上,默认有一个坐标原点为画布中心的坐标轴,坐标原点上有一只面朝x轴正方向小乌龟。2.2 画笔的属性pensize() 设置画笔粗度pencolor
2021-04-19 11:54:08
176
原创 Vue学习笔记(1)
与angular比较1.vue仅仅是mvvm结构中的view层,一个如同jQuery的工具库,而不是框架。而angular是一个框架。2.vue的双向邦定是基于ES5 的 getter/setter来实现的,而angular而是由自己实现一套模版编译规则,需要进行所谓的“脏”检查,vue则不需要。因此,vue在性能上更高效,但是代价是对于ie9以下的浏览器无法支持。3.在 vue 中指令和组...
2019-11-29 11:12:51
180
原创 CSS布局-左固定右自适应的几种方法
需求实现一个左右布局,左边固定宽度200px,右边自适应宽度。通用布局HTML<div> <div class="fixed">固定宽度200px</div> <div class="auto">自适应宽度</div></div>CSS.fixed{ background: #768; width:2...
2019-11-21 17:07:54
927
原创 ES6学习笔记-function,default, rest
functiones6中function的写法变得无比简洁function(i){return i +1 ;} //es5(i) => i + 1;//es6如果比较复杂,就加个{}把代码包起来function(x, y) { x++; y--; return x + y;} //es5(x,y) => { x++; y--; ...
2019-09-24 15:46:48
625
原创 建站,通过iis部署网站(无后台数据库,纯前端)
最近搞了一个网站,没有后台和数据库,前端是angular写死的网页,纯做了一个展示的网站,前端不难,主要是这个创建网站的整个流程以前没有接触过,然后一步一步摸过来,其实不是很困难,但也着实费了一些功夫,所以记录下来。1.前置工作域名,云服务器(服务器版本:Windows Server 2016)。2.备案域名备案,网站备案,域名解析到服务器3.登录云服务器下一个Chrome浏览器,干掉...
2019-08-14 16:37:38
724
原创 微信小程序-项目初始化
小程序是一个mvvm模型的框架,在js中有一个page,为一个页面的构造器,渲染页面的时候先装载json文件,配置当前的顶部导航,接着装载wxml文件,配置页面的DOM,在装载wxss,这个是样式文件,最后读取js文件,并根据页面中的Page函数即构造器中的内容,将wxml和data进行绑定,渲染出结果。简单来说就是json(入口配置文件)-> wxml -> wxss->...
2019-05-20 11:02:40
1462
原创 微信小程序-Flex布局
学习小程序有段时间了,想着把这段时间的成果总结几个点,let‘s begin。小程序的理念就是开箱即用,嫖完就跑,其小程序的框架封装得也很好,感觉上手比学习Angular要轻松不少。那既然是做前端的,亘古不变的话题就是页面布局。而我们的角儿——微信小程序,常用的布局方式是Flex布局。Flex布局的意思就是弹性布局,我的理解这种布局就像一块有弹性的胶布,你在上面写的东西后,你拉伸或者挤压这...
2019-05-14 15:18:55
311
原创 3月工作总结
1.git的使用在之前公司一直在用github desktop进行代码管理,所以对于命令行进行代码管理不是很熟悉,下面是进行上传代码的一般步骤。1.1 代码的上传我们在做一个项目时,想要上传代码,首先要做的是进行编译,这样能够保证项目是否有错误没有更改ng build --prod --aot然后需要拉一下代码,查看是否是最新版本git pull origin deb(分支名)查...
2019-04-22 16:07:59
642
原创 ES6学习笔记-Spread Operator 展开运算符
ES6中 还有一个特别好玩的特性就是Spread Operator也就是三个点**…**(这里不是省略号)下面介绍一下他能干啥。组装对象或者数组//数组const color = [ 'red' , 'yellow' ]const colorful = [...color, 'green' , 'pink' ]console.log(colorful)//对象const alp ...
2019-04-03 18:34:56
298
原创 ES6学习笔记-字符串、函数
es6对字符串新增了很多方便的功能,下面我们可以逐一来看一下。1.字符串格式化将表达式嵌入字符串中进行拼接。用${}来界定。//ES5var name = 'will'console.log('hello' + name)//es6var name = 'will';console.log(`hello ${name}`)2.includes:判断是否包含然后直接返回布尔值...
2019-04-02 18:48:01
257
原创 Angular学习笔记-表单校验器
自定义校验器基本语法:xxx(params:AbstractControl):{[key:string]}:any{return null;传入参数类型是AbstractControl,是FormGroup、FormControl和FormArray的共同父类,传入参数声明了校验器用于什么对象类型上返回值类型为任意类型,其中返回对象类型中的key键是string类型,可通过errors...
2019-04-02 17:48:44
168
原创 Angular学习笔记-响应式表单
响应式表单共两步1.使用ts编写数据模型2.使用指令将数据模型与HTML连接编写数据模型,FormModule的3个类型类名解释FromControl基本单位,保存当前值,元素校验状态以及元素是否被修改FromGroup多个FromControl集合,可带表表单的一部分活整个表单,只要有一个FromControl对象无效,都会导致FormGroup无效,其构造...
2019-04-02 15:21:09
157
原创 Angular学习笔记-模板式表单
Angular提供了两种表单处理方式模板式表单响应式表单两种表单处理方式的不同点:模板式表单:其数据模型是通过组件模板中的相关指令来定义的。因为受限于HTML的语法,只适用于简单的表单场景。响应式表单:使用ts创建底层模型,运用特定的指令将模板和底层ts数据模型绑定。模板式表单指令指令隐式创建实例ngFormFromGroupngModelFormC...
2019-04-01 18:42:43
225
原创 Angular-懒加载及子路由的配置
接触了一个项目,发现里面的路由配置都是用的懒加载,因为之前没有用过,所以做个一个小demo帮助梳理。首先是懒加载的好处,它需要加载的资源不会一股脑的全加载出来,而是用到什么就加载什么,这样能够大大提高效率。1.创建项目ng new lazyloading2.创建根路由文件app-router.module.tsng g m app-routing --flat --module=ap...
2019-03-12 18:02:25
1664
原创 面试总结
1.前端如何跨域请求。https://www.cnblogs.com/dujunfeng/p/8004273.html2 如何做浏览器兼容3 讲讲知道的es6的东西https://segmentfault.com/a/11900000043656934 var与let的区别let : 变量只能声明一次var : 变量可以多次声明let的好处是当我们写代码比较多的时候可以避免在不...
2019-02-20 22:35:09
212
原创 Angular-创建一个带有主内容和副内容的饼状图表
最近遇到一个需求,大概是这个样子本来想用D3js去画,后来发现这个主要得问题在于饼状图里面的两个label是不同格式,有一个主内容和副内容,查了查也没有找到合适的方法(对不起,其实就是没画明白)。然后找了找其他插件,发现echart这个插件太好用了。他的核心也是d3,但是封装的很好,稍微改改就可以达到效果。点击可以进入官网echarts。1.安echarts插件这个自行百度吧
2018-12-29 14:04:47
386
原创 Angular学习笔记-生命周期钩子
生命周期钩子其中红色代表只执行一次(初始化类型的钩子),绿色代表执行多次(检测类型钩子)钩子解释constructor实例化对象ngOnchanges初始化输入属性ngOnInit初始化(除输入属性外的)其他属性ngDoCheck组件变更检测ngAfterContentInit投影内容初始化,第一次ngDoCheck()之后调用。...
2018-12-26 17:21:16
390
原创 Angular学习笔记-组件通讯
组件通讯需要做到组件通讯松耦合性,这样组件的重用性才高输入属性@Input()如果一个组件需要从外部接受一些东西,他应该用输入属性声明他需要的东西,至于这些东西从哪里来,组件不需要知道。就像小时候的自己,只知道索取,而获得方式并不了解。接收父组件信息,被@Input装饰器注解的属性输入属性是单向的数据传递,只能父组件传递信息给子组件,子组件无法影响父组件demo//html...
2018-12-25 17:11:44
116
原创 Angular学习笔记-管道(format)
Angular的常用内置管道uppercase 转换成大写英文//html:大写转换{{myName|uppercase}}//ts:myName:string = ‘Baobab’;//输出BAOBABlowercase 转换成小写英文//html:小写转换{{myName|lowercase }}//ts:myName:string = ‘Baobab’;//输...
2018-12-25 15:34:38
557
原创 Angular学习笔记-响应式编程(万物皆为流)
响应式编程是以观察者模式为核心的。观察者模式与RxJs我们在初始化可观察对象的时候,我们会向观察者对象注册一些观察者对象,当可观察对象里面发生变化时,就会调用观察者里面的一些方法,来把自己的变化告诉观察者,让观察者做一些相应的处理。这样的模式叫做观察者模式。下面这段代码是典型的观察者模式代码,我们由此介绍一些关于RxJs的概念。可观察对象Observable(流):表示一组值或者事件...
2018-12-25 10:42:24
196
原创 Angular学习笔记-数据绑定
数据绑定Angular默认使用单向数据绑定,双向数据绑定可选。(单向数据绑定:只从controller的值绑定到view,再view更改数据值并不会改变所有该数据的值)数据绑定分为3种绑定形式事件绑定DOM属性绑定HTML属性绑定事件绑定给一个事件指定一个处理方法等号右侧可以不是调用方法,可以是属性赋值 形如&lt;button (click)="saved = tr...
2018-12-24 17:18:54
243
原创 Angular学习笔记-使用工厂和值声明提供器
提供器的声明方式,常用的有3种使用类:useClass{ provide: MyService, useClass: MyMockService }使用工厂:useFactory使用工厂进行注入,就需要写一个返回任意对象的函数。使用值:useValue{provide:‘API_URL’,useValue:‘http://my.api.com/v1’}demo编写一个工厂函数,...
2018-12-24 14:59:55
300
原创 Angular学习笔记-提供器入门
注入器每一个组件都有一个注入器实例,负责注入组件需要的对象。注入器是angular提供的一个服务类。注入器自动通过通过组件的构造函数,将注入器的对象注入进组件constructor(private productService:ProductService){...}Angular的注入器在看到这样一个构造函数声明的时候,他就会在整个Angular项目中需要这样一个叫ProductSe...
2018-12-21 14:30:40
166
原创 Angular学习笔记-依赖注入入门
依赖注入依赖注入:Dependency Injection 简称DI首先,当使用参数是对象的方法时,需要先实例化对象,再传给方法。var person = new Person();addPerson(person);于是我们说,addPerson方法依赖Person类,而Person类注入给addPerson方法。然而,当addPerson需要多个参数时,则有//实例化对象st...
2018-12-20 17:30:30
139
原创 Angular学习笔记-路由守卫
应用场景只有当用户已经登陆并拥有某些权限时才能进入某些路由一个有多个表单组件组成的向导,例如注册流程,用户只有在当前路由的组件中填写了满足要求的信息才可以导航到下一个路由当用户未执行保存操作而试图离开当前导航时提醒用户路由守卫分类CanActivate:处理导航到某路由的情况。当不满足CanActivate的条件时,就不导航。CanDeactivate:处理从当前路由离开...
2018-12-20 14:39:41
177
原创 Angular学习笔记-配置子路由及辅助路由
配置子路由子路由的配置形如 path: 'home', component: HomeComponent, children: [ { path: '', component: XxxComponent }, { path: '/yyy', component: YyyComponent } ]第一步 修改路由定义第二步 添加路由插座注意ro...
2018-12-19 17:15:13
294
原创 Angular学习笔记-路由传参及重定向路由
路由传参的三种方式在查询参数中传递数据/product?id=1&amp;name=2 =&gt; ActivatedRoute.queryParams[id]在路由路径中传递数据{path:/product/:id} =&gt; /product/1 =&gt; ActivatedRoute.params[id]在路由配置中传递数据{path:/product,componen...
2018-12-19 11:25:59
1121
原创 Angular学习笔记-angular程序如何引入第三方依赖
第一步 把第三方依赖包下到本地(以JQuery为例)npm install jquery --save第二步 把库引入到项目中去angular.json第三步 安装类型描述文件(目的是为了让ts代码认识jq和boot的代码)npm install @types/bootstrap --save-dev...
2018-12-18 16:23:03
1372
原创 Angular学习笔记-配置静态路由
1.声明一个路由组件(app-routing.module.ts)1.1 在新生成的项目声明ng g &amp;lt;project name&amp;gt; --routing1.2 内部项目声明ng generate module app-routing --flat --module=app2.app-routing.module.ts文件同时他会在app.module里注入这个文件3...
2018-12-14 17:27:15
957
原创 10月工作总结
这段时间跟着我组老大做了几个FIORI项目,收获颇多,想着总结一下:1.代码写注释首先就是代码注释,这个能够帮助其他人接收你的项目时更好的理解项目代码,而且其实你自己过段时间再看自己写的代码也能帮助记忆。1.1 格式每一个function上面需要写注释,形如function内单句代码需要注释就可以直接用//1.2 内容注释的内容其实也需要注意,首先描述清晰简洁,像一些常用的其实收集...
2018-10-19 18:00:42
352
原创 ES6学习笔记-扩展的对象功能、解构
数组和对象是JS中最常用的表示形式。为了简化提取信息,ES6新增了解构,它能够按照一定的模式,从数组和对象中提取值,对变量进行赋值。解构初体验一个简单的栗子在es5中,为变量赋值,需要一个一个的指定值。let a = 1;let b = 2;let c = 3;而用了es6的解构,就很简洁了let [a,b,c] = [1,2,3];再举一个栗子我们在开发中会经常拿对象的...
2018-09-29 16:30:33
190
原创 ES6学习笔记-class, extends, super
这段时间打算认真学习一下ES6,因为ES6是下一个版本的JavaScript,我们公司用的框架angular也需要es6,所以我找了阮一峰老师的es6教程进行学习。let关键字首先是声明变量的关键字又添加了let,用这个命令所声明的变量只会在所在的代码块有效。首先看用var声明的变量,由于循环结束后i依然没有被销毁,所以我们最后得到的结果是最后一次循环i的值。var a = [];for...
2018-09-28 16:29:40
464
1
转载 JavaScript-Ajax 与异步数据传输
我在前端开发中,经常会遇到查看http状态码以及查看HTTP里面的数据的情况,现在,我就针对网上的一些资料进行整理。基本概念Ajax全称是异步的JavaScript和XML。通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。传统的网页(不使用 AJAX)如果需要更新内容,必须重载整个网页页面。优点:无需...
2018-09-28 15:02:07
482
原创 SAP UI5-关于"ESLint:(linebreak-style)Expected linebreaks to be 'LF' but found 'CRLF"的错误原因及解决办法
我们在开发SAP UI5程序的时候在编辑controller文件时,会常有这个错误。 而这个错误并不影响程序本身的逻辑,但是在这个ERROR存在的情况下你想要上传代码到github上却是不允许的,我们要想个办法干掉这个ERROR。这个问题的原因是由于换行方式的不一同导致的,在默认的WEB-IDE中,他的换行方式是LF,LF的换行方式/n,而我们在编译过程中用了回车换行(CRLF),所以才...
2018-08-17 10:35:23
2164
原创 安装MongoDB进度条长时间不动
根据在网上搜的步骤安装mongoDB到这步,就基本上卡死不动,在网上查到的办法是死等,等了半个小时,但运气不好半个小时也不一定安装成功。如果进行到这步,卡死在这里,直接打开任务管理器干掉安装进程。重新安装时在进行这个界面的上一个界面左下角会有一个默认勾选的按钮,把那个取消掉,再点下一步,秒速安装。...
2018-08-10 14:08:08
6905
5
原创 angular5-利用PowerShell WIndows启动angular项目的服务
我们在编写一个angular项目的时候,为了便于开发,让后台服务与代码部分看的更为清晰,可以利用PowerShell来启动服务。webstrom常规编译界面: 1、左键打开想要启动的服务-&gt;show in Explorer 2.双击启动服务的文件夹 3.按住shift键同时点击鼠标右键-&gt;Open PowerShell window here 4.打...
2018-08-10 13:36:23
541
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人