关于vue,npm,webpack,nod的一点心得
玩前端,换不到一颗米,纯粹是基于兴趣(我也希望能换到米,但真到那一天,说不定兴趣就没了,^_^),感觉玩这个能带来快乐,仅此而已。
最近,又来了点兴趣,读了读《vue实战》,自然免不了再次接触npm,webpack等这些东西。
于是,按图索骥,见到什么不懂的就按照套路,继续百度,感觉以前模糊的一些概念理解的稍微明白了些,稍作整理,记录在此。
为什么要学习大前端?
1、传统制作网站,用不到现在称为大前端的这些概念,找一个cms网站框架,比如phpcms,按照框架的教程,简单制作几个模板就行了。如果页面比较多,最多再引入某个前端框架(比如layui),这样效率会高一些。
2、再高端一点,可以利用tp等php框架,从一砖一瓦开发制作网站,这样的网站是完全定制的,从数据库设计到后台的设计编码等等,自然免不了要找一个前端框架集成,用的最多的就是基于jquery的前端框架。
我理解,现在互联网上的站点,绝大多数都是传统方法设计制作的。
这种方法大家用的时间很长了,都习惯了,而且还是目前的主流方案,效率上没见到有什么大问题。至于有些文章说现在网站系统越来越复杂,引入的js越来越多,为了解决js依赖问题,所以要学npm,学大前端。这个我还理解不了,可能我层次低。我觉得一个网站系统能用到多少js呢?也没多少啊,况且很多功能强大的js出厂的时候也经过封装,实际上页面上也用不了几个script标签。
那既然老办法能用,为什么要学大前端呢?因为这玩意新潮前卫。
为什么前卫?
3、node的出现,给js编程引入了很多新东西。比如js代码的模块化,传统基于浏览器的js代码没法实现,但是node能实现。这样一来,代码更加规范,更加好理解。这是node的优势,还有其它的优势,但我只能理解到模块化这个层次。为了利用这个优势,所以好多人转移到node环境来写代码。特别是js包管理工具npm,确实好用,只要你搞一个package.json配置文件,所有的依赖npm全会替你搞定,有package.json就好,相关代码不一定要下载,二次开发的时候,只要运行一下npm install,依赖就会全部下载好,你编写完代码,再次发布的时候,代码不必附上,只要发布一个package.json就行了,下一个使用的人,自然明白怎么下载这些包。
4、为了利用包管理的便利性,一些网站前端就可以在这个环境下面设计。
5、问题是,无论你用什么技术设计制作的网站,最终还得回到浏览器环境去呈现。代码编辑的再优雅再好看,浏览器不认识还是白搭。
6、webpack就派上用场了。webpack就是做翻译工作的,把在node环境下面编好的代码转换为浏览器能认识的格式。大体就是这么回事,不然的话,一个人在node环境下编好的代码,仅仅依赖包node_modules下面的文件就成千上万,发布到服务器上也不现实,而且,好多包都是工具,没啥直接用处(最主要的,浏览器也不认识它啊)。webpack用众多的专门的工具——loader,把用到的转换,用不到的丢弃,格式不符合的进行转换。总之,一个目的,就是让最终的代码能让浏览器认识,而且尽量代码要少,要小。
至于vue,据说可以应付直接操作dom带来的效率问题(教材上是这么说的)。可是,从学习和入手的角度看,jquery比vue强多了。至于那点带宽,在现在网速越来越快的情况下,我感觉真是可以忽略不计的。
就写到这里吧,也不知道理解的对不对。
关于vue,npm,webpack,nod的一点心得的更多相关文章
- 每天记录一点:NetCore获得配置文件 appsettings.json vue-router页面传值及接收值 详解webpack + vue + node 打造单页面(入门篇) 30分钟手把手教你学webpack实战 vue.js+webpack模块管理及组件开发
每天记录一点:NetCore获得配置文件 appsettings.json 用NetCore做项目如果用EF ORM在网上有很多的配置连接字符串,读取以及使用方法 由于很多朋友用的其他ORM如S ...
- 运行vue init webpack vueTest时报错
前言:好久没动vue项目了,早上心血来潮.准备写一个项目,然后坚持在github更新,不为别的,只为养成一个习惯. 运行vue init webpack vueTest时,报了下面的错误: 当时我思考 ...
- webpack vuejs项目学习心得
最近在做移动端的项目,最近webpack和vuejs很火,就想到了用vuejs webpack来构建我的项目 先了解了一些webpack的入门基础 http://webpack.github.io/d ...
- Vue.js——webpack
Vue.js——60分钟webpack项目模板快速入门 browserify是一个 CommonJS风格的模块管理和打包工具,上一篇我们简单地介绍了Vue.js官方基于browserify构筑的一套开 ...
- vue+node+webpack搭建环境
一.环境搭建 1.1.去官网安装node.js( http://www.runoob.com/nodejs/nodejs-install-setup.html ) 注意node的版本,只有支持和谐模 ...
- Vue.js + Webpack
vue.js Vue.js是一个构建数据驱动的 web 界面的库.Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件 以上是Vue.js官方定义,故名思议,以数据驱动视 ...
- vue.js+webpack在一个简单实例中的使用过程demo
这里主要记录vue.js+webpack在一个简单实例中的使用过程 说明:本次搭建基于Win 7平台 Node.js 安装官网提供了支持多种平台的的LTS版本下载,我们根据需要来进行下载安装.对于Wi ...
- 【非专业前端】vue+element+webpack
先点这里(- ̄▽ ̄)- 环境搭建 默认你已经安装了node.js 下面安装vue和webpack npm install -g @vue/cli npm install -g @vue/cli-ini ...
- VUE + vue-cli + webpack 创建新项目
首先记录一下命令. 这是一个睿智新手的笔记. p.s.这是配置好环境以后的命令. ----------------------------------------------- $ npm insta ...
- vue init webpack nameXXX 报错问题:
vue新建demo项目报错如下: M:\lhhVueTest>vue init webpack L21_VueProject vue-cli · Failed to download repo ...
随机推荐
- 06 IdentityServer4 中支持外部标识提供器
06. IdentityServer4 External Providers .NET Core 3.1 January 24, 2020| deblokt| in category Tutorial ...
- pip 安装 Caused by SSLError(SSLError(1, '[SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1123)'))
1.问题 1.1 问题截取 pip install redis -i https://pypi.tuna.tsinghua.edu.cn/simple Looking in indexes: http ...
- docker使用镜像报错:standard_init_linux.go:211: exec user process caused “exec format error“
在服务器使用镜像运行代码时出现了该报错.使用了docker run 后,由于是刚接触docker,不知道是什么原因.经网上查阅资料后,了解到原来有可能是我的镜像架构和机器架构不一致. 使用 docke ...
- OpenCV4.1.0与CUDAcuda_10.1.105联合进行图像特征点提取和特征匹配时,运行程序时错误提示:无法定位程序输入点?createBFMatchercv@DescriptorMatcher@cuda@cv......于动态链接库......
问题描述: OpenCV4.1.0与CUDAcuda_10.1.105联合进行图像特征点提取和特征匹配时,运行程序时错误提示:无法定位程序输入点?createBFMatchercv@Descripto ...
- tomcat源码分析(二)如何处理请求
概述 tomcat的核心就是处理请求, 接收Request, 建立Socket链接, 处理,返回Response. 通过前面的架构图可以知道每个Service都包括连接器Connector组件和容器C ...
- AngleSharp 自带的HttpRequest参数设置
AngleSharp自带一个获取网址源码的api,可以方便的从web取得html var config = Configuration.Default.WithDefaultLoader(); var ...
- PHP 安装启用openssl(解决 wordpress可选的模组openssl未被安装或已被禁用)
本教程仅适用Windows Servier IIS网站服务器. 我的博客使用IIS搭建,相比Linux,相关的教程格外少.因此让以后的小伙伴也能马上解决问题,分享此方法. 首先需要下载php对应版本的 ...
- 快速上手jquery
优点 强大的选择器机制 优质的隐私迭代 链式编程 选择机制 选择器 标签名 $('div') id $('#id') class $('.clname') 属性 $('div:[name='66']' ...
- MySQL-进阶篇
一.连接查询 图解示意图 1.建表语句 部门和员工关系表: CREATE TABLE `tb_dept` ( `id` int(11) NOT NULL AUTO_INCREMENT COMMENT ...
- python实现网页爬虫示例
用python里面的 requests 与 BeautifulSoup 结合,实现网页爬虫示例. 示例一:抓取中国省份: import requests from bs4 import Beautif ...