无标题文章

总结小程序 


1 小程序是微信全新定义的规范,是基于xml+js的,不支持也不兼容HTML,兼容受限的部分CSS写法。

2  在项目中微信小程序的优化

        一、将所有的接口放在统一的js文件中并导出

·    二、在app.js中创建封装请求数据的方法 会导致第一次加载数据过慢

      三、在子页面中调用封装的方法请求数据

3 小程序页面传值的方法

    一、给HTML元素添加data-*属性来传递我们需要的值,然后通过e.currentTarget.dataset或onload的param参数获取。但data-名称不能有大写字母和不可以存放对象

二、设置id 的方法标识来传值通过e.currentTarget.id获取设置的id的值,然后通过设置全局对象的方式来传递数值

三、在navigator中添加参数传值

4小程序的双向绑定和vue哪里不一样?

小程序直接this.data的属性是不可以同步到视图的,必须调用:

this.setData({          noBind:true   })

5 文件结构分析

①app.js  这里面是存放了用户数据信息

②app.json   先看到pages  这里面是存放了配置文件  第一个默认为首页  window 里面存放了title标题  有颜色和样式等等

③app.wxss  这里面就是存放了一些样式  可以把它看做一个css文件

④project.config.json  个人感觉像是存放了一些项目配置文件(里面第一行写的就是项目配置文件...哈哈哈哈)

6 小程序的优化

?    

其他的就是一些小程序的使用方法

7 小程序启动过程

作者:崽崽不哭

链接:https://www.jianshu.com/p/38680d955c19

來源:

著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

本月我们所学小程序的内容和Vue的基本思路都非常的相似 只要学过Vue基本上学习的微信小程序的就比较轻松

1.首选先去微信小程序。微信公众平台上面去注册一个微信小程序开发的资格    网址 https://mp.weixin.qq.com/cgi-bin/wx

2.小程序API网址 https://developers.weixin.qq.com/miniprogram/dev/api/

3.下载微信小程序开发者工具  

4.创建微信小程序项目  

5.微信小程序上的所有功能都能在API网址上面能*够找到

6.其微信小程序里面的页面和之前我们写的项目的格式有所不同  

    创建项目之后出现四个文件  

  js文件:js文件创建了我们自动创建了我们的所有钩子函数 我们的js操作都是写在这页面    

 json文件 在这个文件可以控制我们头部上的标题等一系列功能

wxml文件:这个就是在页面展示我们所写的内容 在功能上的处理都是传入的js文件上进行处理的   

  wxss文件  :这个文件就是把我们所有的样式都写入这文件里面   

一个总的app.json这是一个非常重要的文件 当我们创建文件一个会在app.json里面自动创建一个路径  我们页面跳转和微信小程序里面的小图标都是放在这个文件里面  如果想把页面放在第一个就把app.json里面的路径放到第一个上面去

vue  

1.vue双向数据绑定的原理  

2.懒加载的原理

3.动态创建路由

4.路由传值

5vueX基本讲解

6.vue的axios的get和post请求的区别

7.vue的11个生命周期钩子函数    


无标题文章_第1张图片

8。mock.js的作用就是在后台没有发送个前台数据的时候,可以先模拟出数据进行操作


es5和es6的区别

let const  和 字符串模板

let有块级作用域

class

promise

Promise 是异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理和更强大。它由社区最早提出和实现,ES6 将其写进了语言标准,统一了用法,原生提供了Promise对象。

所谓Promise,简单说就是一个容器,里面保存着某个未来才会结束的事件(通常是一个异步操作)的结果。从语法上说,Promise 是一个对象,从它可以获取异步操作的消息。Promise 提供统一的 API,各种异步操作都可以用同样的方法进行处理。

Promise对象有以下两个特点。

(1)对象的状态不受外界影响。Promise对象代表一个异步操作,有三种状态:pending(进行中)、fulfilled(已成功)和rejected(已失败)。只有异步操作的结果,可以决定当前是哪一种状态,任何其他操作都无法改变这个状态。这也是Promise这个名字的由来,它的英语意思就是“承诺”,表示其他手段无法改变。

(2)一旦状态改变,就不会再变,任何时候都可以得到这个结果。Promise对象的状态改变,只有两种可能:从pending变为fulfilled和从pending变为rejected。只要这两种情况发生,状态就凝固了,不会再变了,会一直保持这个结果,这时就称为 resolved(已定型)。如果改变已经发生了,你再对Promise对象添加回调函数,也会立即得到这个结果。这与事件(Event)完全不同,事件的特点是,如果你错过了它,再去监听,是得不到结果的。

注意,为了行文方便,本章后面的resolved统一只指fulfilled状态,不包含rejected状态。

有了Promise对象,就可以将异步操作以同步操作的流程表达出来,避免了层层嵌套的回调函数。此外,Promise对象提供统一的接口,使得控制异步操作更加容易。

Promise也有一些缺点。首先,无法取消Promise,一旦新建它就会立即执行,无法中途取消。其次,如果不设置回调函数,Promise内部抛出的错误,不会反应到外部。第三,当处于pending状态时,无法得知目前进展到哪一个阶段(刚刚开始还是即将完成)。

如果某些事件不断地反复发生,一般来说,使用 Stream 模式是比部署Promise更好的选择。

字符串的扩展

字符的 Unicode 表示法

codePointAt()

String.fromCodePoint()

字符串的遍历器接口

at()

normalize()

includes(), startsWith(), endsWith()

repeat()

padStart(),padEnd()

matchAll()

模板字符串



箭头函数

ES6标准新增了一种新的函数:Arrow Function(箭头函数)。

为什么叫Arrow Function?因为它的定义用的就是一个箭头:

x => x * x

上面的箭头函数相当于:

function(x){returnx * x;}

在继续学习箭头函数之前,请测试你的浏览器是否支持ES6的Arrow Function:

'use strict';

console.log('你的浏览器支持ES6的Arrow Function!');

 Run

箭头函数相当于匿名函数,并且简化了函数定义。箭头函数有两种格式,一种像上面的,只包含一个表达式,连{ ... }和return都省略掉了。还有一种可以包含多条语句,这时候就不能省略{ ... }和return:

解构赋值


global

ES5 的顶层对象,本身也是一个问题,因为它在各种实现里面是不统一的。

浏览器里面,顶层对象是window,但 Node 和 Web Worker 没有window。

浏览器和 Web Worker 里面,self也指向顶层对象,但是 Node 没有self。

Node 里面,顶层对象是global,但其他环境都不支持。

同一段代码为了能够在各种环境,都能取到顶层对象,现在一般是使用this变量,但是有局限性。

全局环境中,this会返回顶层对象。但是,Node 模块和 ES6 模块中,this返回的是当前模块。

函数里面的this,如果函数不是作为对象的方法运行,而是单纯作为函数运行,this会指向顶层对象。但是,严格模式下,这时this会返回undefined。

不管是严格模式,还是普通模式,new Function('return this')(),总是会返回全局对象。但是,如果浏览器用了 CSP(Content Security Policy,内容安全策略),那么eval、new Function这些方法都可能无法使用。

js

1.闭包 

闭包就是在函数外部能够访问函数内部的变量  简单的来说就是 函数套函数  闭包的好处就是在函数内部的局部变量不会执行完之后就销毁

坏处就是内存占用过大 内存泄漏  主要用在插件封装 和 面向对象    一般情况下我们不推荐使用闭包

2.跨域

跨域是因为我们的同源策略 同域名 同端口 同协议  跨域问题只是针对于浏览器  在后台请求数据就没有跨域问题  跨域有三种解决方案

1在后台的时候直接写一个header 头就能解决 

2.前后端的配合使用  jsonp   但是这个 jsonp本身与ajax并没有任何的关联  只是在这时候使用它 

3.后台请求并没有跨域这一说 访问别的数据的时候 创建一个公共的数据库  然后把数据拿过啦发送给前台就可以了

3.作用域

全局作用域: 最外层函数定义的变量拥有全局作用域,即对任何内部函数来说,都是可以访问的

局部作用域:和全局作用域相反,局部作用域一般只在固定的代码片段内可访问到,而对于函数外部是无法访问的,最常见的例如函数内部

4  Undefined==null ’ ’’==0 1==true 0==false// 除了上述的几个返回值为true,其余全为false

5.parseint强制转换为取整形 parsefloat强制转换为浮点型  number强制转换为数值   

8.原型 

Es6之前,js是一种弱类型语言,实现对 对象属性或方法的扩展与继承;

9..原型链

当我们获取一个对象的属性或方法的时候,如果其本身没有,那么就通过__proto__往上找,知道null为止;

10.在click事件不推荐使用 会有300的延迟

11.阻止默认事件 preventDefault   阻止冒泡事件   stop.propagation

12 默认event  兼容的方法    e ||windwo.event  

13 ajax  和  socket的区别  

Ajax是单向请求数据 是客户端向服务端请求数据,服务端才会主动给客户端发送数据;是单轮循,是单工通信;

Socket是双向请求数据,客户端可以向服务端请求数据,服务端也会主动给客户端推送消息,是多轮循,是双工通信,可以跨域通信;

你可能感兴趣的:(无标题文章)