本文介绍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>

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

前端开发系列047-基础篇之Vue的安装和初始化的更多相关文章

  1. 从0到1用react+antd+redux搭建一个开箱即用的企业级管理后台系列(基础篇)

    背景 ​ 最近因为要做一个新的管理后台项目,新公司大部分是用vue写的,技术栈这块也是想切到react上面来,所以,这次从0到1重新搭建一个react项目架子,需要考虑的东西的很多,包括目录结构.代码 ...

  2. 前端开发:css基础知识之盒模型以及浮动布局。

    前端开发:css基础知识之盒模型以及浮动布局 前言 楼主的蛮多朋友最近都在学习html5,他们都会问到同一个问题 浮动是什么东西?  为什么这个浮动没有效果?  这个问题楼主已经回答了n遍.今天则是把 ...

  3. ESP8266开发之旅 基础篇① 走进ESP8266的世界

    授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...

  4. ESP8266开发之旅 基础篇② 如何安装ESP8266的Arduino开发环境

    授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...

  5. ESP8266开发之旅 基础篇③ ESP8266与Arduino的开发说明

    授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...

  6. 1.基础篇之vue入门

    为了建立高效团队,很多公司会采用全栈工程师,虽然利弊兼有,对于成本优先的创业团队,肯定是首选,特别是对.net生态圈,大部分都是小公司,就更加重要了.这里记录的是对vue的学习点滴,希望对你有所助力. ...

  7. openlayers5-webpack 入门开发系列一初探篇(附源码下载)

    前言 openlayers5-webpack 入门开发系列环境知识点了解: node 安装包下载webpack 打包管理工具需要依赖 node 环境,所以 node 安装包必须安装,上面链接是官网下载 ...

  8. leaflet-webpack 入门开发系列一初探篇(附源码下载)

    前言 leaflet-webpack 入门开发系列环境知识点了解: node 安装包下载webpack 打包管理工具需要依赖 node 环境,所以 node 安装包必须安装,上面链接是官网下载地址 w ...

  9. 【Windows10 IoT开发系列】配置篇

    原文:[Windows10 IoT开发系列]配置篇 Windows10 For IoT是Windows 10家族的一个新星,其针对不同平台拥有不同的版本.而其最重要的一个版本是运行在Raspberry ...

  10. ESP8266开发之旅 基础篇④ ESP8266与EEPROM

    授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...

随机推荐

  1. js 计算精度问题解决

    js 计算精度问题解决 /** * * * @param x 需处理精度的数 * @param n 小数点后第 n 位 * @returns 处理后的数 */ function roundFracti ...

  2. stackbd:在一个块设备上堆叠另一个块设备

    stackbd 是一个虚拟的块设备,它作为另一个块设备的前端,如 USB 闪存盘或循环设备.它将I/O请求传递给底层设备,同时它打印请求信息用于调试.它还有可能修改请求. 堆叠块设备(stackbd) ...

  3. Dify 框架连接 PGSQL 数据库与 Sandbox 环境下的 Linux 系统调用权限问题

    Dify 框架连接 PGSQL 数据库与 Sandbox 环境下的 Linux 系统调用权限问题 背景 在使用 Dify 框架进行开发时,遇到了两个主要的技术挑战: 代码节点连接到 PGSQL(Pos ...

  4. 零基础搭建AI作曲工具:基于Magenta/TensorFlow的交互式音乐生成系统

    引言:当AI遇见莫扎特 "音乐是流动的建筑",当人工智能开始理解音符间的数学规律,音乐创作正经历着前所未有的范式变革.本文将手把手教你构建一套智能作曲系统,不仅能够生成古典钢琴小品 ...

  5. 鸿蒙NEXT开发实战教程:仿抖音短视频

    今天的实战教程是简单模仿一下抖音短视频,主要是首页部分的内容,先看效果图:   下面为大家讲解这个项目的详细教程. tabbar Tabbar的难点在于中间有个发布按钮,思路是我们可以在tabbar里 ...

  6. CANopen TPDO 配置详解:对象 1800h、1A00h 与实践指南

    CANopen TPDO 配置详解:对象 1800h.1A00h 与实践指南 目录 CANopen TPDO 配置详解:对象 1800h.1A00h 与实践指南 目录 引言 TPDO 通讯参数详解 ( ...

  7. Python 深拷贝 vs 浅拷贝

    在一些业务场景中, 有时候我们需要复制一个对象, 但是又不想对原来的对象产生影响, 就想搞个 副本 来为所欲为地操作嘛. 但是呢, 在 Python中呢, 又不能通过 赋值 的方式达到效果, 为啥呢? ...

  8. 网络编程:epoll

    原理 select 的几个缺点: 1)每次调用select,都需要把fd集合从用户空间拷贝到内核空间,这个开销在fd很多时会很大 2)每次调用select都需要在内核遍历传递进来的所有fd,这个开销在 ...

  9. 部署Spring Boot项目详细教程

    首先Spring Boot项目能正常使用IP地址搭配接口在浏览器正常运行 第一步: 打开Maven里面Lifecycle下面的package或者是install双击运行(需要有网络) 第二步: 查看运 ...

  10. K8s进阶之LimitRange

    概述 官方文档:https://kubernetes.io/zh-cn/docs/concepts/policy/limit-range/ 在 Kubernetes(K8s)中,LimitRange ...