vue.js源码分析之第一次提交(83fac01)*

要想看一个技术框架最简单粗暴的方法就是从作者的第一个版本去看版本的整个演进过程,所以阅读vue.js源码我就选择了第一次提交为我们的起点,不过第一个版本真的好简陋,完全看不出作者是想写个框架出来呢~~~~

###注意
编译的时候会报错,不知道作者提交的时候是有问题,还是版本更迭的问题,方正最后解决了,对于理解vue.js没有什么帮助,不过我们还是走走作者曾经走过的路

项目结构


作者用得是grunt + component打包工具,mocha加chai作为测试框架

编译

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
npm install -g component@0.16.3
component install
npm install
grunt
Running "jshint:build" (jshint) task
>> 1 file lint free.
Running "component_build:build" (component_build) task
duration: 17ms
write: dist/element.js (7kb)
Running "mocha:build" (mocha) task
Testing: test/test.html
Warning: PhantomJS timed out, possibly due to a missing Mocha run() call. Use --force to continue.
Aborted due to warnings.

报错了,其实会发现test目录下的test.html引用了../node_modules/grunt-mocha/node_modules/mocha/mocha.js,
但是该文件并不存在,在../node_modules/grunt-mocha目录下运行npm install,安装mocha,然后运行grunt

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
grunt
Running "jshint:build" (jshint) task
>> 1 file lint free.
Running "component_build:build" (component_build) task
duration: 16ms
write: dist/element.js (7kb)
Running "mocha:build" (mocha) task
Testing: test/test.html
Element
✓ should have a variable
1 passing (110ms)
>> 1 passed! (0.11s)
Done, without errors.

成功了

佘伟春 wechat
欢迎您扫一扫上面的微信公众号,订阅我的博客!

热评文章