前端只是概念理解

樱木花道VS康 发布于 2020/02/16 20:43
阅读 411
收藏 1

开源之夏第三届火热来袭,高校学生参与赢万元奖金!>>>

大家好,nodejs、vuejs、express这些都是做什么的?

我的理解:

nodejs可以做前端、可以写后端。所谓后端就是有可以跟数据库交互的模块

express是一个nodejs开发的mvc框架

vuejs是一个前端数据绑定框架

但是后来发现,vuejs也可以与后台交互什么 axios  也可以访问后台接口,也就是vuejs不能与数据库交互是吗?

在这nodejs 跟 express 两者的语法又不同,,,

有哪位大神一句话总结下这写框架的用途:(最好能比对着java开发说,我是java开发者) 谢谢

 

 

 

加载中
0
chentao106
chentao106
nodejs相当于jvm,vuejs相当于spring mvc(主要差异是vuejs运行在浏览器中),express相当于tomcat
chentao106
chentao106
看你对Tomcat理解多深了,二者同样最常被用作Web容器,同时处于Web开发框架的最底层
樱木花道VS康
樱木花道VS康
哦哦,谢谢! 我百度查看说express是nodejs的web开发框架呀,能等同于tomcat,容器么,,,
0
hyjiacan
hyjiacan

尽管这个问题已经过去了一年。这又快过年了,我来说说吧。

但并不是一句话,我觉得可以说清楚一点。

NodeJS

NodeJS ,是JS的一个运行时,可以理解成 JRE。

在 NodeJS 面世前,JS都是运行在浏览器上的,也就是说在这之前JS的运行时是浏览器。

有  Ryan Dahl  把 NodeJS 干出来后, 就赋予了 JS 新的舞台:脱离浏览器的环境。

在本质上,无论是浏览器,还是 NodeJS,他们的核心功能都仅仅是提供一个JS的运行环境而已。

其区别在于所提供的接口不同:

  • 浏览器提供的接口,仅仅是访问网络资源,访问浏览器以及页面DOM
  • NodeJS提供的接口,可以访问网络资源和系统资源

VueJS

VueJS 是一个前端框架,其本质还是JS代码,运行在JS运行时上。可以理解成JSP。

在动态创建页面初期,只能使用浏览器原生的接口 (document.createElement) 来编写,而 VueJS 只是换了一种方式,通过各种包装,提供一种更便捷的方式来动态创建页面。

vuejs也可以与后台交互什么 axios  也可以访问后台接口

你说的这句是不准确的。

VueJS 本身与后台请求绝无关系,仅仅是通过 axios 向后台发起请求,而这个请求,本质也只是浏览器提供的JS接口 (XHR 或 request)。

axios 也只是对浏览器提供的JS接口的封装,使其便于使用。

Express

这是一个 JS 的 MVC 框架。运行在 NodeJS 上。类似JAVA的 Spring 框架,即用于处理请求。

其提供了便捷的路由支持。虽然其也有HTML模板渲染的支持,但这个功能并不是 Express 的全部。

而你说的连接数据库啥的,其实也是通过 NodeJS 提供的接口(数据库驱动需要通过 NodeJS 接口与服务器通信)

最后,你所说的 

在这nodejs 跟 express 两者的语法又不同

这个说法本身是不正确的。

Express 使用的本就是JS组成的。不知你所说的语法不同,是指的引用外部JS文件还是页面渲染模板语法。

如果是前者,那么仅仅是浏览器和NodeJS支持不同版本的JS规范而已,所以看起来写法不同。

如果是后者,那模样根本是算不得JS的,那是一种独立的语法。

综上:

  • NodeJS 是JS的运行环境,仅仅是提供了与浏览器不同的接口
  • VueJS 是用于动态生成一个网页的框架,其利用了浏览器/NodeJS提供的接口
  • Express 是MVC框架,用于处理请求,并支持动态渲染页面

完!

OSCHINA
登录后可查看更多优质内容
返回顶部
顶部