美团视频播放
10-12
http://blog.csdn.net/kidwei/article/details/8559842
10-19
1.百度前端学院
http://ife.baidu.com/
10-20
1.学一下canvas,想学webGl,nodejs,docker等慢慢来,一点一点啃
2.投论文,看论文
11-24
1. es6的async函数学习https://segmentfault.com/a/1190000008677697
https://koa.bootcss.com/#
Functional JavaScript Mini Book 函数式JS编程
11-25
es6的async函数学习https://segmentfault.com/a/1190000008677697
https://koa.bootcss.com/#
Promise,Generator(生成器),async(异步)函数
http://www.cnblogs.com/libin-1/p/6917097.html
http://www.ruanyifeng.com/blog/2015/04/generator.html
进程与线程的一个简单解释
http://www.ruanyifeng.com/blog/2013/04/processes_and_threads.html
函数柯里化和thunk
https://blog.oyanglul.us/javascript/functional-javascript.html#sec-2-2
http://blog.csdn.net/u010552788/article/details/50850453
11-27
函数执行不延时的原因一般是直接调用了函数 function a(){};
setTimeout(a(),1000);//会直接执行
setTimeout(a,1000)//正常执行,如果需要参数怎么办
setTimeout(function(){
a(ss);
},1000)//这样写是最好的。
var alice = {
name: "alice11",
toString: function () {
return this.name;
},
hehe:"123"
}
var smith = {
name: "smith",
toString: function () {
return this.name;
}
}
alert(alice.hehe || smith); // 123
06.js 这句是多余的?
app.use(main);
alert(alice || smith); // alice
11.30
1.廖雪峰koa
https://www.liaoxuefeng.com/wiki/001434446689867b27157e896e74d51a89c25cc8b43bdb3000/001471133885340dad9058705804899b1cc2d0a10e7dc80000
2.KOA实战
http://book.apebook.org/minghe/koa-action/xtemplate/xtemplate.html
3.koa Views
http://www.ituring.com.cn/article/274839
4.koa应用程序由中间件组成
5.学习node
6.next() KOA里用来转交执行权
7.迭代器里的next用来分段执行generator
8.await 协程 交出函数执行权
await next()
next()
9.npm --save-dev
Npm uninstall xx
10.koa模板引擎 koa-views Nujucks xtemplate ejs
12.1
1. Node.js的模块中exports的理解
https://segmentfault.com/q/1010000004008530
2. 使用Node.js和Koa框架实现前后端交互
http://www.jianshu.com/p/0060d2d9b533
3.地址
http://127.0.0.1:3000/?page=1&cityId=1
TypeError: "string" must be a string, Buffer, or ArrayBuffer
可能是返回值的问题 (ctx.body)
4.http request (nodeJs 发送http请求)
注意,在例子中调用了 req.end()
。 使用 http.request()
必须总是调用 req.end()
来表明请求的结束,即使没有数据被写入请求主体。
5.queryString
require('querystring');
6.
'data' 事件#
新增于: v0.9.4
chunk
<Buffer> | <string> | <any> 数据片段。对于非对象模式的可读流,这是一个字符串或者 Buffer
。 对于对象模式的可读流,这可以是除 null
以外的任意类型 JavaScript 值。
'data'
事件会在流将数据传递给消费者时触发。当流转换到 flowing 模式时会触发该事件。调用 readable.pipe()
, readable.resume()
方法,或为 'data'
事件添加回调可以将流转换到 flowing 模式。 'data'
事件也会在调用 readable.read()
方法并有数据返回时触发。
在没有明确暂停的流上添加 'data'
事件监听会将流转换为 flowing 模式。 数据会在可用时尽快传递给下个流程。
如果调用 readable.setEncoding()
方法明确为流指定了默认编码,回调函数将接收到一个字符串,否则接收到的数据将是一个 Buffer
实例。
const readable
=
getReadableStreamSomehow();
readable
.on('data',
(chunk
)
=>
{
console
.log(`Received $
{chunk
.length
} bytes of data
.`
);
});
7.怀疑resolve出去的value有长度限制
12.3
1. http://blog.csdn.net/qq_16515187/article/details/78345880
对thunk函数的理解
2.
'end' 事件#
新增于: v0.9.4
'end'
事件将在流中再没有数据可供消费时触发。
注意: 'end'
事件只有在数据被完全消费后 才会触发 。 可以在数据被完全消费后,通过将流转换到 flowing 模式, 或反复调用 stream.read()
方法来实现这一点。
constreadable
=getReadableStreamSomehow();
readable
.on('data',(
chunk
)=>
{
console
.log(`Received $
{chunk
.length
}bytes of data
.`
);
});
readable
.on('end',()
=>
{
console
.log('There will be no more data.');
});
3.koa版本不同导致了巨大的问题
报错①this.set not a function
②String must be string buffer or arraybuffer
③cb到底是什么?
4.yield后面可以跟thunk函数
12-5
1. Generator 函数 - 基本概念
http://blog.csdn.net/github_26672553/article/details/53993581
必须调用遍历器对象的next方法,似的指针移动到下一个状态。也就是说,每次调用next
方法,内部指针就从函数头部或上一次定下来的地方开始执行,直到遇到下一个yield
语句(或return
语句)为止。换言之,Generator函数是分段执行的,yield
语句是暂停执行的标记,而next
方法可以恢复执行。
2. ES6-深入理解Generator yield & Koa中间件执行顺序
http://blog.csdn.net/qiqingjin/article/details/51921331
3.yield与await的区别
4.cb函数怎么回事
Cb类比于resolver?
解答一:
这个要看co模块的源码 ,yield后面如果跟的是一个chunk函数,co会把它包装成一个Promise对象
function thunkToPromise(fn) {
var ctx = this;
return new Promise(function (resolve, reject) {
fn.call(ctx, function (err, res)/* 这个就是cb函数 */{
if (err) return reject(err);
if (arguments.length > 2) res = slice.call(arguments, 1);
resolve(res);
});
});
}
Thunk 函数
http://blog.csdn.net/fendouzhe123/article/details/50426156
thunk函数
在co的应用中,为了能像写同步代码那样书写异步代码,比较多的使用方式是使用thunk函数(但不是唯一方式,还可以是:Promise)。比如读取文件内容的一步函数fs.readFile()方法,转化为thunk函数的方式如下:
[javascript] view plain copy
function readFile(path, encoding){
return function(cb){
fs.readFile(path, encoding, cb);
};
}
那什么叫thunk函数呢?
thunk函数具备以下两个要素:
有且只有一个参数是callback的函数;
callback的第一个参数是error。
5.http.request的response是一个http.IncomingMessage类
6.为什么用await/promise后无法全部接收
数据流应该写在end里面
写在data里只是数据流,不完整
12-6
1. Express细节探究(1)——app.use(express.static)
http://www.cnblogs.com/A-dam/p/5053299.html
2.KOA引擎 CSS加载的问题?
3.本地webà服务器web ①静态资源部署 ②render?
4. 逗号运算符 https://www.cnblogs.com/liubeimeng/p/5505138.html
12-7
1. HTML <a> 标签的 href 属性
超链接的 URL。可能的值:
绝对 URL - 指向另一个站点(比如 href="http://www.example.com/index.htm")
相对 URL - 指向站点内的某个文件(href="index.htm")
锚 URL - 指向页面中的锚(href="#top")
2. 前端视频播放初探总结,video标签-视频插件jwplayer
http://blog.csdn.net/future_todo/article/details/52683932
https://www.cnblogs.com/webenh/p/5815741.html
3.UTC时间
UTC时间实际上是一串以自1970年以来的毫秒数表示的长数字。
12-8
1. 关于文字内容溢出用点点点(...)省略号表示
http://www.zhangxinxu.com/study/200909/text-overflow-ellipsis-so-on.html
ellipsis |
显示省略符号来代表被修剪的文本。 |
Text-overflow: ellipsis
还需要overflow:hidden进行修剪才行
1-2
问题:
王建丰的视频播放页
一:(未打包node模块)使用步骤
①npm install
②node main/main.js
③127.0.0.1:3000/?topicId=2&cityId=1
二:说明
因为接口是移动端的所以就写的移动端适配的视频播放页面
三:问题
①KOA引擎 CSS加载的问题
我在模板html文件里用<link>引入本地css文件的话好像没有效果,改了几次路径也没成,不知道哪出问题了?
所以css直接用<style>写在模板里了