首页 > 其他分享 >Vue 开发环境搭建

Vue 开发环境搭建

时间:2023-06-18 20:11:57浏览次数:42  
标签:npm vue plugin js webpack Vue eslint 开发 搭建

1 安装环境

Node.js

js的运行环境,相当于 java 的 jvm

官网:https://nodejs.org/en,下载最新稳定版 18.16.0 LTS,双击安装即可

自动安装了npm,终端验证:

C:\Users\Administrator>node -v
v18.16.0
C:\Users\Administrator>npm -v
9.5.1

npm = node package manager,js 包的管理工具,相当于 java 的 maven

# 安装淘宝镜像
npm install -g cnpm --registry=https://registry.npm.taobao.org
cnpm -v
# 安装webpack
npm install webpack -g
webpack -v
# 安装vue-cli
npm install --global vue-cli
vue -V

NVM

nodejs version manage,Node.js 版本管理工具,相当于 git

下载地址:https://github.com/coreybutler/nvm-windows/releases

双击安装即可,验证:

C:\Users\Administrator>nvm -v
1.1.11

环境变量在安装时已经自动创建

NVM_HOME=D:\nvm
NVM_SYMLINK=D:\nodejs

# Path
%NVM_HOME%
%NVM_SYMLINK%

修改配置 D:\nvm\setting.txt

root: D:\nvm
path: D:\nodejs
# 新增4行,配置镜像
arch: 64
proxy: none
node_mirror: https://npm.taobao.org/mirrors/node/
npm_mirror: https://npm.taobao.org/mirrors/npm/

Chrome vue-devtools 插件

WebStorm

配置

Editor
Font
  • Size:14
File and Code Template
  • HTML File
<!-- Author: weiyupeng -->
<!-- DateTime: ${DATE} ${TIME} -->
  • JavaScript File
/**
 * @Author: weiyupeng
 * @DateTime: ${DATE} ${TIME}
 *
 */
  • Vue Single File Component
<!-- Author: weiyupeng -->
<!-- DateTime: ${DATE} ${TIME} -->
Plugins

安装 Vue.js 插件

新建 Vue 项目

  • 启用web-pack自动部署项目架构
PS Z:\WebStormProject\vue-study> vue init webpack

? Generate project in current directory? Yes
? Project name vue-study                 
? Project description vue study               
? Author weiyupeng                               
? Vue build standalone      
? Install vue-router? Yes             
? Use ESLint to lint your code? Yes
? Pick an ESLint preset Standard
? Set up unit tests No
? Setup e2e tests with Nightwatch? No
? Should we run `npm install` for you after the project has been created? (recommended) npm
  • package.json
{
  "name": "vue-study",
  "version": "1.0.0",
  "description": "vue study",
  "author": "weiyupeng",
  "private": true,
  "scripts": {
    "dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js",
    "start": "npm run dev",
    "lint": "eslint --ext .js,.vue src",
    "build": "node build/build.js"
  },
  "dependencies": {
    "vue": "^2.5.2",
    "vue-router": "^3.0.1"
  },
  "devDependencies": {
    "autoprefixer": "^7.1.2",
    "babel-core": "^6.22.1",
    "babel-eslint": "^8.2.1",
    "babel-helper-vue-jsx-merge-props": "^2.0.3",
    "babel-loader": "^7.1.1",
    "babel-plugin-syntax-jsx": "^6.18.0",
    "babel-plugin-transform-runtime": "^6.22.0",
    "babel-plugin-transform-vue-jsx": "^3.5.0",
    "babel-preset-env": "^1.3.2",
    "babel-preset-stage-2": "^6.22.0",
    "chalk": "^2.0.1",
    "copy-webpack-plugin": "^4.0.1",
    "css-loader": "^0.28.0",
    "eslint": "^4.15.0",
    "eslint-config-standard": "^10.2.1",
    "eslint-friendly-formatter": "^3.0.0",
    "eslint-loader": "^1.7.1",
    "eslint-plugin-import": "^2.7.0",
    "eslint-plugin-node": "^5.2.0",
    "eslint-plugin-promise": "^3.4.0",
    "eslint-plugin-standard": "^3.0.1",
    "eslint-plugin-vue": "^4.0.0",
    "extract-text-webpack-plugin": "^3.0.0",
    "file-loader": "^1.1.4",
    "friendly-errors-webpack-plugin": "^1.6.1",
    "html-webpack-plugin": "^2.30.1",
    "node-notifier": "^5.1.2",
    "optimize-css-assets-webpack-plugin": "^3.2.0",
    "ora": "^1.2.0",
    "portfinder": "^1.0.13",
    "postcss-import": "^11.0.0",
    "postcss-loader": "^2.0.8",
    "postcss-url": "^7.2.1",
    "rimraf": "^2.6.0",
    "semver": "^5.3.0",
    "shelljs": "^0.7.6",
    "uglifyjs-webpack-plugin": "^1.1.1",
    "url-loader": "^0.5.8",
    "vue-loader": "^13.3.0",
    "vue-style-loader": "^3.0.1",
    "vue-template-compiler": "^2.5.2",
    "webpack": "^3.6.0",
    "webpack-bundle-analyzer": "^2.9.0",
    "webpack-dev-server": "^2.9.1",
    "webpack-merge": "^4.1.0"
  },
  "engines": {
    "node": ">= 6.0.0",
    "npm": ">= 3.0.0"
  },
  "browserslist": [
    "> 1%",
    "last 2 versions",
    "not ie <= 8"
  ]
}

运行

npm run dev
# Your application is running here: http://localhost:8080

Vue 项目结构

├── build/                      # webpack 配置文件;
│   └── ...
├── config/                     # 与项目构建相关的常用的配置选项;
│   ├── index.js                # 主配置文件
│   ├── dev.env.js              # 开发环境变量
│   ├── prod.env.js             # 生产环境变量
│   └── test.env.js             # 测试环境变量
│
├── src/
│   ├── main.js                 # webpack 的入口文件;
│   ├── common/                 # 存放项目共用的资源,如:常用的图片、图标,共用的组件、模块、样式,常量文件等等;
│   │   ├── assets/             # 存放项目共用的代码以外的资源,如:图片、图标、视频 等;
│   │   ├── components/         # 存放项目共用的组件,如:封装的导航条、选项卡等等; 备注:这里的存放的组件应该都是展示组件;
│   │   ├── network/            # 存放项目的网络模块,如:接口;
│   │   ├── compatible/         # 存放项目的兼容模块,如:适合App和微信各种接口的模块;
│   │   ├── extension/          # 存放已有类的扩展模块,如:对 Array 类型进行扩展的模块;
│   │   ├── libraries/          # 存放自己封装的或者引用的库;
│   │   ├── tools/              # 自己封装的一些工具
│   │   ├── constant.js         # 存放js的常量;
│   │   ├── constant.scss       # 存放scss的常量;
│   │   └── ...
│   └── app/                    # 存放项目业务代码;
│       ├── App.vue             # app 的根组件;
│       └── ...
│
├── static/                     # 纯静态资源,该目录下的文件不会被webpack处理,该目录会被拷贝到输出目录下;
├── test/                       # 测试
│   ├── unit/                   # 单元测试
│   │   ├── specs/              # test spec files
│   │   ├── eslintrc            # 专为单元测试配置的eslint配置文件
│   │   ├── index.js            # 测试编译的入口文件
│   │   ├── jest.conf.js        # Jest的配置文件
│   │   └── karma.conf.js       # Karma的配置文件
│   │   └── setup.js            # 在Jest之前运行的启动文件;
│   └── e2e/                    # e2e 测试
│       ├── specs/              # test spec files
│       ├── custom-assertions/  # 自定义的断言
│       ├── runner.js           # test runner 脚本
│       └── nightwatch.conf.js  # test runner 的配置文件
├── .babelrc                    # babel 的配置文件
├── .editorconfig               # 编辑器的配置文件;可配置如缩进、空格、制表类似的参数;
├── .eslintrc.js                # eslint 的配置文件
├── .eslintignore               # eslint 的忽略规则
├── .gitignore                  # git的忽略配置文件
├── .postcssrc.js               # postcss 的配置文件
├── index.html                  # HTML模板
├── package.json                # npm包配置文件,里面定义了项目的npm脚本,依赖包等信息
└── README.md

标签:npm,vue,plugin,js,webpack,Vue,eslint,开发,搭建
From: https://www.cnblogs.com/peng8098/p/vue01.html

相关文章

  • Vue实战(09)-列表渲染:让你的页面秒变爆款!
    1最基础的循环<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>Vue中的列表渲染</title><scriptsrc="../vue.js"></script></head><body>......
  • JavaScript-Vue
    2Vue2.1Vue概述通过我们学习的html+css+js已经能够开发美观的页面了,但是开发的效率还有待提高,那么如何提高呢?我们先来分析下页面的组成。一个完整的html页面包括了视图和数据,数据是通过请求从后台获取的,那么意味着我们需要将后台获取到的数据呈现到页面上,很明显,这就需要我们使......
  • 用 Typescript 搭建 Nodejs Server
    Typescript是微软开发的自由和开源的变成语言,是Javascript的超集,它可以编译成Javascript。Typescript支持Javascript的语法,同时它又包含了类型定义、接口、枚举、泛型等很多后端语言的特点,能在编译时支持类型检查,因此可以很好的提升代码质量。本文将演示如何使用Typescipt......
  • MySQL数据库主从搭建(详细图文)
    文章目录前言一、主从搭建准备二、Master1.修改mysql配置文件2.创建授权用户3.查看日志和宿主机master的状态三、slave操作1.修改宿主机的server-id2.进入mysql执行相关命令3.UUID的相关配置四、测试前言主从原理:MySQL之间数据复制的基础是二进制日志文......
  • bitwarden 搭建密码管理服务器
    BitwardenOpenSourcePasswordManager支持多端同步部署代码点击查看代码mkdir/app/bitwarden/datadockerrun-d\--rm\--namebitwarden\-p8080:80\-p3012:3012\-eSIGNUPS_ALLOWED=true......
  • 使用 Nginx 在服务器上搭建一个 Xooxle 镜像站
    配置目标期望能够通过xooxle.example.com访问www.xooxle.com。配置DNS配置地址:「DNS解析DNSPod」->「域名」->「解析」->「添加记录」xooxleA222.233.233.23配置Nginx切换到Nginx配置目录:cd/etc/nginx/sites-enabled新建配置:touchxooxle.conf修改配置:......
  • SpringBoot:SpringWeb项目+Vue项目dist包整合成jar包
    接到需求做一个小功能项目,其中还要配备前端页面,并且将前端打包进后端jar包内,由jar包运行。项目结构将Vue打包之后的dist文件放到resouces资源路径下修改pom文件将下面的build配置替换掉pom中的build<build><finalName>自定义项目jar名称(可以用${project.artifatId})</finalNam......
  • vue 路由懒加载
    VUE路由的懒加载,官网是这样说明的:当打包构建应用时,JavaScript包会变得非常大,影响页面加载。如果我们能把不同路由对应的组件分割成不同的代码块,然后当路由被访问的时候才加载对应组件,这样就会更加高效。VueRouter支持开箱即用的动态导入,这意味着你可以用动态导入代替静态导......
  • 基于Eclipse+MySQL+J2EE开发的天猫商城
    基于Eclipse+MySQL+J2EE开发的天猫商城项目介绍......
  • 2022 RoboCom 世界机器人开发者大赛-本科组(国赛)个人题解
    RC-u4变牛的最快方法思路最短编辑距离+记录路径板子题,不懂最短编辑距离的可以看看网上的博客。不懂为什么官方题解用的bfs写法,然后网上所有的题解就是bfs了。我这里就是双重for循环实现,参考下写法即可。代码点击查看代码#include<bits/stdc++.h>#definexfirst#definey......