前端开发系列047-基础篇之Vue的安装和初始化

本文介绍Vue项目的安装和初始化等内容。

一、Vue框架安装

我们在项目中使用vue.js框架的方式主要有以下几种情况

> ① 已有项目可以选择下载并导入独立版本
> ② 使用 CDN 方法导入框架
> ③ 使用npm或者cnpm来安装
> ④ 使用vue-cli来快速搭建大型单页项目

① 下载并导入独立版本

我们可以在 Vue.js 的官网上直接下载 vue.min.js 并用script标签引入。

点击下载 Vue.js

② 使用 CDN 方法导入框架

BootCDN: https://cdn.bootcss.com/vue/2.2.2/vue.min.js

unpkg:https://unpkg.com/vue/dist/vue.js和npm发布的最新版本保持一致。

cdnjs : https://cdnjs.cloudflare.com/ajax/libs/vue/2.1.8/vue.min.js

在页面中通过script标签设置src属性为对应的地址即可引入。

③ 使用npm或者cnpm来安装

这里npm安装命令和相关的过程。

wendingding:~ wendingding$ cd /Users/文顶顶/Desktop/V/my-project 
wendingding:my-project wendingding$ npm install vue
npm WARN saveError ENOENT: no such file or directory, open '/Users/文顶顶/Desktop/V/my-project/package.json'
npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN enoent ENOENT: no such file or directory, open '/Users/文顶顶/Desktop/V/my-project/package.json'
npm WARN my-project No description
npm WARN my-project No repository field.
npm WARN my-project No README data
npm WARN my-project No license field.

+ vue@2.5.17
added 1 package in 4.759s


   ╭─────────────────────────────────────╮
   │                                     │
   │   Update available 5.5.1 → 6.4.0    │
   │     Run npm i -g npm to update      │
   │                                     │
   ╰─────────────────────────────────────╯

npm安装的主要命令

$ npm --version 查看npm的版本信息
$ npm install vue 使用npm安装vue到当前的目录

如果觉得npm的安装速度慢,那么也可以使用淘宝的镜像及其cnpm命令。

cnmp安装的主要命令

$ npm install -g cnpm --registry=https://registry.npm.taobao.org 全局安装cnmp
$ cnpm install vue

④ 使用vue-cli来快速搭建大型单页项目

这里列出使用vue-cli来快速搭建大型单页项目的命令和主要过程。

wendingding:V wendingding$ cd my-vue/
wendingding:my-vue wendingding$ npm install -g cnpm --registry=https://registry.npm.taobao.org
npm WARN deprecated socks@1.1.10: If using 2.x branch, please upgrade to at least ....
/usr/local/bin/cnpm -> /usr/local/lib/node_modules/cnpm/bin/cnpm
+ cnpm@6.0.0
added 629 packages in 20.318s
wendingding:my-vue wendingding$ cnpm install --global vue-cli
Downloading vue-cli to /usr/local/lib/node_modules/vue-cli_tmp
Copying /usr/local/lib/node_modules/vue-cli_tmp/_vue-cli@2.9.6@vue-cli to /usr/local/lib/node_modules/vue-cli
Installing vue-cli's dependencies to /usr/local/lib/node_modules/vue-cli/node_modules
[1/20] commander@^2.9.0 installed at node_modules/_commander@2.17.1@commander
.....
[20/20] inquirer@^6.0.0 installed at node_modules/_inquirer@6.1.0@inquirer
deprecate metalsmith@2.3.0 › gray-matter@2.1.1 › coffee-script@^1.12.4 CoffeeScript on NPM has moved to "coffeescript" (no hyphen)
Recently updated (since 2018-08-10): 2 packages (detail see file /usr/local/lib/node_modules/vue-cli/node_modules/.recently_updates.txt)
  Today:
    → download-git-repo@^1.0.1(1.1.0) (04:18:17)
  2018-08-11
    → request@^2.67.0(2.88.0) (00:26:50)
All packages installed (252 packages installed from npm registry, used 5s(network 5s), speed 1.29MB/s, json 236(1.43MB), tarball 5.33MB)
[vue-cli@2.9.6] link /usr/local/bin/vue@ -> /usr/local/lib/node_modules/vue-cli/bin/vue
[vue-cli@2.9.6] link /usr/local/bin/vue-init@ -> /usr/local/lib/node_modules/vue-cli/bin/vue-init
[vue-cli@2.9.6] link /usr/local/bin/vue-list@ -> /usr/local/lib/node_modules/vue-cli/bin/vue-list
wendingding:my-vue wendingding$ vue init webpack my-project

? Project name my-vue
? Project description A Vue.js project
? Author flowerField <18681537032@163.com>
? Vue build standalone
? Install vue-router? Yes
? Use ESLint to lint your code? Yes
? Pick an ESLint preset Standard
? Set up unit tests Yes
? Pick a test runner jest
? Setup e2e tests with Nightwatch? Yes
? Should we run `npm install` for you after the project has been created? (recom
mended) npm

   vue-cli · Generated "my-project".


# Installing project dependencies ...
# ========================
...
^Cwendingding:my-vue wendingding$ cd my-project/
wendingding:my-project wendingding$ cnpm install
✔ Installed 58 packages
✔ Linked 0 latest versions
✔ Run 0 scripts
✔ All packages installed (used 42ms(network 39ms), speed 0B/s, json 0(0B), tarball 0B)
wendingding:my-project wendingding$ cnpm run dev

> my-vue@1.0.0 dev /Users/文顶顶/Desktop/V/my-vue/my-project
> webpack-dev-server --inline --progress --config build/webpack.dev.conf.js

 95% emitting                                                                 b      
 DONE  Compiled successfully in 3608ms                                  16:45:10

 I  Your application is running here: http://localhost:8080

主要命令

$ npm install -g cnpm --registry=https://registry.npm.taobao.org 全局安装cnmp
$ cnpm install --global vue-cli 使用cnmp来全局安装vue-cli
$ vue init webpack my-project 初始化项目
$ cd my-project/ 切换进入到项目子目录
$ cnpm install
$ cnpm run dev

上面命令执行完毕后,可以在浏览器中通过http://localhost:8080来访问项目页面。

二、Vue项目结构简单说明

下面列出Vue项目初始化完毕后,项目的目录结构。

wendingding:my-project wendingding$ tree -L 2
.
├── README.md
├── build
│   ├── build.js
│   ├── check-versions.js
│   ├── logo.png
│   ├── utils.js
│   ├── vue-loader.conf.js
│   ├── webpack.base.conf.js
│   ├── webpack.dev.conf.js
│   └── webpack.prod.conf.js
├── config
│   ├── dev.env.js
│   ├── index.js
│   ├── prod.env.js
│   └── test.env.js
├── index.html
├── node_modules
│   ├── @babel
│   ├── @types
...
│   └── yauzl
├── package.json
├── src
│   ├── App.vue
│   ├── assets
│   ├── components
│   ├── main.js
│   └── router
├── static
└── test
    ├── e2e
    └── unit

目录结构说明

src文件夹 开发目录

assets 用于存放图片

components 用于存放组件。

App.vue 是项目的入口文件。

main.js 是项目的核心文件。

static文件夹 静态资源目录。

test文件夹 初始的测试目录。

build文件夹 项目构建(webpack)相关的代码。

config文件夹 默认的配置目录,包括端口号等信息。

node_modules文件夹 npm 加载的项目依赖模块。

index.html 首页的入口文件。

package.json 项目的配置文件。

README.md 项目说明文档。

这里列出初始App.vue文件的内容(有调整)

<template>
  <div id="app">
    <img src="./assets/logo.png">
    <h1>{{ msg }}</h1>
    <router-view/>
  </div>
</template>

<script>
export default {
  name: 'App',
  data () {
    return {
      msg: '文顶顶:Nice to meet u!'
    }
  }
}
</script>

<style>
#app {
  font-family: 'Avenir', Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: center;
  color: #2c3e50;
  margin-top: 60px;
}
</style>

这里给出项目运行后对应的页面内容。

posted on 2022-12-12 10:01  文顶顶  阅读(85)  评论(0编辑  收藏  举报

导航