博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
node.js、npm、cnpm、webpack的定义与关系
阅读量:3920 次
发布时间:2019-05-23

本文共 2634 字,大约阅读时间需要 8 分钟。

由于今天新接触了许多软件和一些新名词, 避免自己日后混乱, 现在简单描述一下它们之间的关系

node.js(一个前端的开发环境):

菜鸟教程:

简单的说 Node.js 就是运行在服务端的 JavaScript。

Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台。

Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好。

摘自文章片段( )

这是一种通过JavaScript语言开发web服务端的东西”。如果这种晦涩解释还没把你搞晕,你没准会接着问:“为什么我们要用node.js?”,别人一般会告诉你:node.js有非阻塞,事件驱动I/O等特性,从而让高并发(high concurrency)在的轮询(Polling)和comet构建的应用中成为可能。

npm(安装依赖js包)

因为node.js也有许多依赖的js包, 所以要有一个像maven一样的管理来管理这些js包, 而npm就是这样的功能

cnpm

npm默认向国外网站拉取js包依赖, 难免下载的慢, 所以cnpm是一个国内版的npm,是替代npm的程序把, cnpm用的是淘宝的镜像

webpack(通过npm(cnpm)下载)

Webpack 是一个前端资源的打包工具,它可以将js、image、css等资源当成一个模块进行打包

使用webpack有什么好处呢?

1、模块化开发
程序员在开发时可以分模块创建不同的js、 css等小文件方便开发,最后使用webpack将这些小文件打包成一个文
件,减少了http的请求次数。
webpack可以实现按需打包,为了避免出现打包文件过大可以打包成多个文件。
2、 编译typescript、ES6等高级js语法
随着前端技术的强大,开发中可以使用javascript的很多高级版本,比如:typescript、ES6等,方便开发,
webpack可以将打包文件转换成浏览器可识别的js语法。
3、CSS预编译
webpack允许在开发中使用Sass 和 Less等原生CSS的扩展技术,通过sass-loader、less-loader将Sass 和 Less的
语法编译成浏览器可识别的css语法。

打包过程:

例:将vue01.html的js进行打包

vue.js入门程序 //
+
=
  • {
    {item}}--{
    {index}}
  • {
    {key}}:{
    {value}}
  • {
    {item}}
    {
    {item}}

一、创建mode01.js文件

var add = function(x, y){    return x + y;}var add1 = function(x, y){    return x + y;}// 导出add方法// module.exports.add = add;// module.exports.add2 = add2;module.exports ={add};//如果有多个方法这样导出

二、创建main.js文件

// main.js表示webpack程序开启的程序入口// 先导入需要打包的文件var {add} = require("./model01.js");var Vue = require("./vue.min.js");// 把打包文件的Js复制到此处var VM1 = new Vue({    el:"#app",//表示当前vue对象接管app的div区域    data:{        name:'黑马程序员',// 相当于是MVVM中的Model这个角色        num1:'',        num2:'',        result:'',        list:[1,2,3,4,5],        user:{name:"huang", age:10},        userlist:[             {user:{name:"huang1", age:10}},            {user:{name:"huang2", age:20}},            {user:{name:"huang3", age:30}}        ]    },    mounted:function() {        // alert("VM1");    },    methods:{        abc: function(){            // alert("计算");            this.result = add(this.num1, this.num2);            // this.result = this.num1 + this.num2;        },        acc: function(){            alert("22222");            // this.result = this.num1 + this.num2;        }    }});

三、进入文件目录下:

在这里插入图片描述
该文件目录下cmd打开命令窗口输入: webpack main.js build.js
在这里插入图片描述
执行成功后就会生成一个build.js文件
在这里插入图片描述
四、测试打包的js文件:
将vue01.html的js代码注释掉, 引入 build.js 文件

在这里插入图片描述

build.js 文件就是之前js代码打包好的, 所以运行效果和之前一模一样

转载地址:http://afern.baihongyu.com/

你可能感兴趣的文章
剑指 Offer 68 - I. 二叉搜索树的最近公共祖先
查看>>
剑指 Offer 68 - II. 二叉树的最近公共祖先
查看>>
剑指 Offer 18. 删除链表的节点
查看>>
剑指 Offer 32 - II. 从上到下打印二叉树 II
查看>>
杭电oj-2011 多项式求和 C++
查看>>
杭电oj-2014 青年歌手大奖赛_评委会打分 C++
查看>>
杭电oj-2015 偶数求和 C++
查看>>
杭电oj-2016 数据的交换输出 C++
查看>>
杭电oj-2017 字符串统计 C++
查看>>
杭电oj-2018 母牛的故事 C++
查看>>
Educational Codeforces Round 87 (Rated for Div. 2)----题目+题解(A、B)
查看>>
Codeforces Round #647 (Div. 2) - Thanks, Algo Muse!B. Johnny and His Hobbies(异或)---题解
查看>>
使用WinINet获取网页源代码
查看>>
Ansi、Unicode、UTF-8字符串之间的转换和写入文本文件
查看>>
error C1189:#error:This file requires _WIN32_WINNT to be #defined at least to 0x0403
查看>>
CentOS yum 源的配置与使用
查看>>
error while loading shared libraries: libevent-2.0.so.5 安装好mamcache,启动服务时
查看>>
c++ web编程:写出你的CGI程序
查看>>
Linux RPM 命令参数使用详解 查看 rpm包依赖性
查看>>
C++ primer 第八章
查看>>