新手初次npm安装教程
一、相关概念
npm: Nodejs下的包管理器。
webpack: 它主要的用途是通过CommonJS的语法把所有浏览器端需要发布的静态资源做相应的准备,比如资源的合并和打包。
vue-cli: 用户生成Vue工程模板。(帮你快速开始一个vue的项目,也就是给你一套vue的结构,包含基础的依赖库,只需要 npm install就可以安装)
二、安装和配置环境变量
1、下载NodeJS并安装
2、一路Next,直到Finished
3、管理员模式打开CMD,检查是否正常
node自带npm,但是不是最新版本
4、先如下图D盘建立2个目录node_cache和node_global
然后cmd运行以下2条命令
npm config set prefix "D:nodejsnode_global"
npm config set cache "D:nodejsnode_cache"
npm config set registry=http://registry.npm.taobao.org
npm config get registry
5、npm info vue 看看能否获得vue的信息
查看安装目录的global文件
注意 此时,默认的模块D:nodejsnode_modules 目录
将会改变为D:nodejsnode_globalnode_modules 目录,
如果直接运行npm install等命令会报错的。
我们需要做1件事情:
增加环境变量NODE_PATH 内容是:D:nodejsnode_globalnode_modules
三、测试NPM安装vue.js
重新打开CMD让上面的环境变量生效
命令:npm install vue -g
这里的-g是指安装到global全局目录去
四、测试NPM安装vue-router
命令:npm install vue-router -g
运行npm install vue-cli -g
安装vue脚手架
对path环境变量添加D:nodejsnode_global
注意,vue-cli工具是内置了模板包括 webpack 和 webpack-simple,前者是比较复杂专业的项目,它的配置并不全放在根目录下的 webpack.config.js 中。
初始化,运行npm install
安装
运行npm install dev
安装依赖
会出现如下报错
解决方案:输入命令npm i ajv
—-敲回车
执行过程中出现上图错误,可以忽略,原因如下:
fsevents不在package.json里,但是仍然安装了,是因为你的系统是Windows系统,fsevents是苹果系统的可选依赖,你的项目有可能是团队项目,别人在他的mac上安装了fsevents相关依赖库,所以到这边你也就安装到你的windows上边了。
你可以检查你的package.json 文件中是不是有fsevents相关依赖,删除即好!
如果没有,其他的npm包也会有依赖fsevents的!!! 这是warning错误,是因为mac下需要
fsevents,这里是在windows环境,所以可以忽略这个警告,对你没什么影响的。
执行npm run dev
,出现如下界面代表执行成功
生成静态文件,打开dist文件夹下新生成的index.html文件
npm run build
nmp下新建出来的vue01的目录描述:
├── build # 构建相关
├── mock # 项目mock 模拟数据
├── plop-templates # 基本模板
├── public # 静态资源
│ │── favicon.ico # favicon图标
│ └── index.html # html模板
├── src # 源代码
│ ├── api # 所有请求
│ ├── assets # 主题 字体等静态资源
│ ├── components # 全局公用组件
│ ├── directive # 全局指令
│ ├── filters # 全局 filter
│ ├── icons # 项目所有 svg icons
│ ├── lang # 国际化 language
│ ├── layout # 全局 layout
│ ├── router # 路由
│ ├── store # 全局 store管理
│ ├── styles # 全局样式
│ ├── utils # 全局公用方法
│ ├── vendor # 公用vendor
│ ├── views # views 所有页面
│ ├── App.vue # 入口页面
│ ├── main.js # 入口文件 加载组件 初始化等
│ └── permission.js # 权限管理
├── tests # 测试
├── .env.xxx # 环境变量配置
├── .eslintrc.js # eslint 配置项
├── .babelrc # babel-loader 配置
├── .travis.yml # 自动化CI配置
├── vue.config.js # vue-cli 配置
├── postcss.config.js # postcss 配置
└── package.json # package.json