Giter Club home page Giter Club logo

vue-source-code's Introduction

目录结构

src
├── compiler        # 编译相关 
├── core            # 核心代码 
├── platforms       # 不同平台的支持
├── server          # 服务端渲染
├── sfc             # .vue 文件解析
├── shared          # 共享代码

compiler

compiler目录包含Vue.js所有编译相关代码,它包括把模板解析成AST语法树,AST语法树优化,代码生成等功能。

编译的工作可以在构建时做(借助webpack、vue-loader等辅助插件);也可以在运行时做,使用包括构建功能Vue.js。显然,编译是一项耗性能的工作,所有更推荐---离线编译

core

core目录包含了Vue.js的核心代码,包括内置组件、全局API封装,Vue实例化、观察者、虚拟DOM、工具函数等等

platform

Vue.js 2.0支持服务端渲染,所有服务端渲染的相关逻辑都在这个目录下,需要注意的是,这部分代码是跑在服务端的node.js,不要和跑在浏览器端的Vue.js混在一起。

服务端渲染主要的工作是把组件渲染为服务端的HTML字符串,将它们直接发送到浏览器上,最后将静态标记'混合'为客服端上完全交互的应用程序。

sfc

通常我们开发Vue.js都会借助webpack进行构建,然后通过.vue单文件来编写组件

这个目录下的代码逻辑会把.vue文件内容解析成一个JavaScript对象。

share

Vue.js会定义一些工具方法,这里定义的工具方法会被浏览器端的Vue.js和服务端的Vue.js所共享的。

vue-source-code's People

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.