现在各种前端框架, 库文件基本都托管到npm上, 我们平常下载到别人的项目文件, 也基本是用npm

构建的, 不了解点node和npm那是寸步难行.

下面介绍的代码示例不敢说是最佳实践, 但都是我亲自在自己机器上测试有效的.

测试环境: win10, node v8.4, npm v5.3.

package.json

package.json文件非常重要, 我们拿到别人的项目第1眼便是看package.json里有什么, 我们自己

创建个新项目, 首先就要创建好package.json文件.

假设我们的项目需要使用jQuery, 我们新建一个demo目录, 并在里面新建一个package.json.

把下面这些基本模板内容, 复制粘贴进去.

{
"name": "demo",
"version": "1.0.0",
"description": "sdsd",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "sheng",
"license": "MIT",
"keywords": [
"key1",
"key2"
],
"dependencies": {},
"devDependencies": {},
"repository": {
"type": "git",
"url": "test-repo"
}
}

文件编码建议使用UTF-8, 换行建议使用LF

上面的JSON文件, 就对我们的demo项目作了最简单的描述.

name            项目名称, 默认使用项目文件夹名.
version 项目版本, 默认版本为1.0.0.
description 项目描述, 简要说明我们的项目是干啥的.
main 指定项目的入口文件.
scripts 测试脚本.
author 项目作者.
license 项目使用的协议.
repository 项目所在的远程仓库, 比如在GitHub上.
keywords 项目关键字. dependencies 生产环境中项目依赖
devDependencies 开发环境中项目依赖

关于项目的一堆描述, 在我们初学阶段, 感觉都无关紧要, 什么项目名字, 版本, 作者之类, 大家

随便写写就行. 我们只关注两个重要的项目描述dependenciesdevDependencies, 它

分别表示在生成环境所需的项目依赖, 和在开发环境中所需要的项目依赖. 初学阶段这两个也不用,

可以区分, 统一理解为是我们需要的项目依赖即可.

打开cmd系统命令行, 切换到当前项目目录, 对于我的机器来说是

D:\Asheng_IDE\FrontEnd\study_tree\react\demo, 接下来输入npm安装命令npm install jquery.

这一步骤执行完毕之后, 我们会发现在我们的项目目录里多了一个文件夹node_modules, 可以看到

里面有一个文件夹jquery, 这正是我们安装的包. 我们还发现项目目录里多了一个package-lock.json,

文件, 这是npm自动为我们创建的, 打开这个文件我们可以看到里面写有jquery依赖信息, 不用管它.

再打开, 我们自己创建的package.json文件, 发现在dependencies栏目下, 已经添加上了jquery依赖

信息.

手动修改package.json文件

手动修改package.json文件即可方便的实现, 对依赖包的安装, 移除, 更新等功能. 方法很简单, 比如

把上面我们依赖信息中的"jquery": "^3.2.1", 直接删除, 在执行npm install, npm就会自动同步

package.json的依赖情况, 也就是会把我们已经下载好的jquery包, 删除. 如果项目里只依赖一个包,

而我们又把这个包在package.json中的信息删除了, 那么npm直接把node_mudlues文件也一并删除.

使用npm构建前端项目基本流程的更多相关文章

  1. react-create-app 构建react项目的流程以及需要注意的地方

    Hello 小伙伴们,如果觉得本文还不错,记得给个 star , 小伙伴们的 star 是我持续更新的动力!GitHub 地址 React 系列文章代码地址 一 目录 不折腾的前端,和咸鱼有什么区别 ...

  2. vue 构建前端项目并关联github

    这几天尝试用node开发一个网站,后端的接口已经初步开发完成,现在开始构建前端的项目,记录下过程,在学习下吧. 用vue-cli 构建项目,myproject.(构架过程略过) 每次在本地构建项目后和 ...

  3. 如何使用Docker构建前端项目

    原文链接 Docker单独部署前端项目和Node项目是非常便捷的,在这里分享一下Docker的使用,主要聊聊它的部署实践.(我是window10专业版安装Docker) Docker Docker是一 ...

  4. npm打包前端项目太慢问题分析以及暂时解决方案

    npm build 打包前端项目实际上是执行 node build/build.js,但是随着项目的依赖包越来越多,项目打包时间不断延长,为了改善这个问题,需要从node入手 暂时解决方案:扩大nod ...

  5. 关于npm构建angular2项目问题

    我在win10系统下用npm构建好angular2项目之后,在命令行下运行 ng serve --open,报一下错误: Unknown browser query 'basedir=$(dirnam ...

  6. react构建前端项目方法汇总

    react简介: 一.使用react 创建一个PC端的项目 (a):使用 yemon 创建一个 webpack 的 react 的项目 控制台安装并且产看 yemon 的版本 yo -v (b): 全 ...

  7. npm构建vue项目

    环境搭建 我们需要先从node.js官网安装node,安装过程很简单,一路“下一步”就可以了(傻瓜式安装). 安装完成之后,打开命令行工具(Mac打开终端),输入 node -v,如图,如果出现相应的 ...

  8. Webpack构建前端项目

    前言 公司据说要搞前后端分离,趁这两天项目完成的差不多,抓紧时间学习一下前端知识 现在流行前端项目工程化,那么第一个问题就是如何创建工程(项目),第一次玩webpack 通过 NPM 创建项目 # 创 ...

  9. jenkins自动构建前端项目(window,vue)

    我们把一个多人协作的vue前端项目发布服务器,一般要经过以下步骤: git更新最新的代码 构建项目 把构建后的代码上传到服务器 如果用jenkins来构建的话,只需要点击一次构建按钮,就可以自动完成以 ...

随机推荐

  1. C++ 类模板三(类模版中的static关键字)

    //类模版中的static关键字 #include<iostream> using namespace std; /* 类模板本质上是c++编译器根据类型参数创建了不同的类, c++编译器 ...

  2. 网络I/O:Socket→RMI

    ★Socket Socket编程可能大家都很熟,所以就不多讨论了,只是说通过socket把数据保存到远端服务器或从网络socket读取数据也不失为一种值得考虑的方式. ★RMI RMI机制其实就是RP ...

  3. 【BZOJ】2015: [Usaco2010 Feb]Chocolate Giving(spfa)

    http://www.lydsy.com/JudgeOnline/problem.php?id=2015 这种水题真没啥好说的.. #include <cstdio> #include & ...

  4. Androidz之字符串国际化问题

    (1)字符串的国际化 在res下写两个values 注意:命名方式都是固定的 一个中文版:values-zh 一个英文版:values-en 可是<string name  要写成一样的,这样会 ...

  5. 【转】VC下的Unicode编程

    转自http://www.leewei.org/?p=1304 UniCode简述 在Windows下用VC编程,如果编写的程序要在多种语言环境下运行(比如日文.中文.葡萄牙文等),使用VC默认的MB ...

  6. poj 2662(Dijkstra+记忆化)

    题目链接:http://poj.org/problem?id=2662 思路:首先路径的选择,如果B点到终点的距离比A点到终点的最短距离短,那么就从A走到B,换句话说,就是每次都是择优选择更靠近终点的 ...

  7. Django(模板语言-自定义filter和simple_tag)

    Django(模板语言-自定义filter和simple_tag)   filter过滤器的主要形式:变量|函数,意思是将变量交给函数处理,而自定义filter就是自己定义函数,因为用到已有的很少. ...

  8. Ubuntu14.04编译Android5.1.1源码

    1.Ubuntu环境配置 硬盘:120G 内存:4G 注:配置很重要,直接影响能否编译成功. 2.安装JDK sudo apt-get update sudo apt-get install open ...

  9. Wex5循环某个div节点下的所有img标签,替换其src属性值

    Model.prototype.newsDetailAfterRefresh = function(event){ var newsDiv = this.getElementByXid("n ...

  10. linux系统中利用vagrant创建虚拟开发环境

    Vagrant简介 作为程序员,可能需要同时开发多个项目,使用多种编程语言,需要使用各种操作系统,如果将很多东西放在同一个电脑上,肯定会被各种配置环境搞晕.一个比较好的办法就是每个项目都有一个干净的开 ...