8.1. 前置知识学习

  • npm 学习

    • 官方文档
    • 推荐资料
    • 需要了解的知识点
      • package.json

        文件相关配置选项

      • npm 本地安装、全局安装、本地开发安装等区别及相关命令

      • npm script脚步的基本编写能力

有时间专门写一个这样的专题,如果需要可以邮件我。malun666@126.com

  • webpack基础学习

    • 官方文档
    • Webpack了解的知识点:
      • webpack的基本配置
      • 了解webpack常用的loader: less-loader、sass-loader、 vue-loader、style-loader、css-loader、eslint-loader、babel-loader等
      • 熟悉Webpack的webpack-dev-server的基本配置和使用,会配置热更新
  • es6语法学习

    • 阮一峰老师的大作《ECMAScript 6 入门》
    • 需要学习的知识点
      • es6的模块机制
      • 各种最新语法糖,简写、geter、setter、箭头函数
      • 类、继承的心机制 ...
  • nodejs基础知识

    • 知识点学习:

      • 文件操作
      • http服务
      • express
  • 组件化开发思想

8.2. Vue脚手架工具:vue-cli构建实战项目

其实如果编写Vue的前端项目,直接使用vue的官方vue-cli构建工具最好用,一个命令就可以直接生成项目的结构和目录。 而且官方需要依赖的包也可以自动配置好,只需要npm instal一下,然后就可以开发测试了。

8.2.1. vue-cli安装

# 安装vue-cli。  安装之前首先确保你已经安装好了nodejs 而且打开命令行
$ npm install -g vue-cli # 校验一下是否安装成功
$ vue -V #=> 2.5.1 我当前的版本是这个,你的可能比这个新

8.2.2. 使用vue-cli初始化项目

通过以下命令的方式可以创建一个项目文件夹,并初始化对应的文件。

$ vue init <template-name> <project-name>

其中template-name可以取以下值,每个值对应不同的项目构建的模板。

  • webpack--全功能的Webpack + vueify,包括热加载,静态检测,单元测试
  • webpack-simple--一个简易的Webpack + vueify,以便于快速开始。
  • browserify--全功能的Browserify + vueify,包括热加载,静态检测,单元测试
  • browserify-simple--一个简易的Browserify + vueify,以便于快速开始。

安装和开发控制台的命令:

# 如果已经安装,请省略
$ npm install -g vue-cli # 初始化一个webpack全功能包的vue项目,请您把my-project换成你自己的项目名。
$ vue init webpack my-project # 用命令行进入当前项目目录
$ cd my-project # npm安装所有的依赖的包
$ npm install # 运行测试的首页
$ npm run dev

8.2.3. 综合实例开发记录

  1. 通过vue-cli构建工具初始化项目目录

安装过程,控制台会问你项目名称是什么?项目描述?项目作者,是否使用eslint校验,是否使用单元测试等....

我的安装过程如下请参考:

$ vue init webpack ttl                        # => 安装webpack模板的项目 ttl(项目名可以随便取)

  A newer version of vue-cli is available.

  latest:    2.6.0
installed: 2.5.1 This will install Vue 2.x version of template. For Vue 1.x use: vue init webpack#1.0 ttl ? Project name mydemovue # => 项目名称
? Project description A Vue.js project # => 项目描述
? Author malun <malun666@126.com> # => 作者
? Vue build standalone # => 是否支持单文件组件
? Use ESLint to lint your code? Yes # => 是否支持ESLint代码校验
? Pick an ESLint preset Standard # => 校验的标准是什么?
? Setup unit tests with Karma + Mocha? Yes # => 是否使用单元测试
? Setup e2e tests with Nightwatch? Yes # => 是否使用e2e测试 vue-cli · Generated "ttl". To get started: cd ttl
npm install
npm run dev Documentation can be found at https://vuejs-templates.github.io/webpack

通过上面一系列的命令后,我们就会创建一个webpack配置好的项目包。目录结构如下:

ttl
|--.babelrc #=> babel的配置文件,主要用于转换es6等最新的js语法。
|--.editorconfig #=> 编辑器配置
|--.eslintignore #=> eslint的忽略校验的配置文件
|--.eslintrc.js #=> eslint的配置校验js是否规范的配置文件
|--.gitignore #=> 设置git忽略的管理的文件
|--README.md #=> readme说明文件
|--build/ #=> 自动构建存放的文件地方
|--config/ #=> 当前开发、测试等配置的文件,需要懂点nodejs了啊。
|--index.html #=> 项目的主入口的模板
|--package.json #=> npm的配置文件
|--src/ #=> 源码目录
|--static/ #=> 静态资源存放的目录
|--test/ #=> 测试相关目录
  1. 初始化依赖包
$ cd ttl              #=> 进入上面创建好的项目目录
$ npm install #=> 安装所有的依赖包。 安装过程可能非常长,网络也可能有问题,请耐心等待。 # 安装完成后,可以直接运行测试,如果自动打开浏览器,并跳转到http://localhost:8080/ 说明一切都ok了。
$ npm run dev

npm 安装的时候经常网会断开,国内的网(哎,说多了都是泪)你懂的。最好能科学上网,或者是用淘宝的npm的镜像

  1. 安装vue-router组件
$ npm i -S vue-router

  1. 到项目的

    /src/components/

    目录下创建三个组件文件。

分别是:

  • 首页组件

    <template>
    <div class="home">
    <h3>{{ msg }}</h3>
    </div>
    </template> <script>
    export default {
    name: 'home', // 组件可以有自己的名字。
    data () { // 组件的data必须是函数
    return {
    msg: '这里是Home视图'
    }
    }
    }
    </script> <style scoped>
    h3 {
    background-color: #82c;
    }
    </style>
  • 用户首页组件

    <template>
    <div>
    <h3>{{ msg }}</h3>
    </div>
    </template> <script>
    export default { // es6的模块导出定义语法,此模块导出默认的对象
    name: 'user', // 组件可以有自己的名字。
    data () { // 组件的data必须是函数
    return {
    msg: '这里是User视图'
    }
    }
    }
    </script> <style scoped>
    h3 {
    background-color: red;
    }
    </style>
  • 产品组件

    <template>
    <div class="product">
    <h3>{{ msg }}</h3>
    </div>
    </template> <script>
    export default {
    name: 'product', // 组件可以有自己的名字。
    data () { // 组件的data必须是函数
    return {
    msg: '这里是Home视图'
    }
    }
    }
    </script> <style scoped>
    h3 {
    background-color: green;
    }
    </style>

项目的目录结构为:

ttl
|-- src
|--|-- Hello.vue
|--|-- Home.vue
|--|-- Product.vue
|--|-- User.vue
  1. 创建router对象及配置路由

src目录下创建approuter.js文件。 然后添加如下代码:

import VueRouter from 'vue-router'              // 导入路由模块
import Home from './components/Home.vue' // 导入Home组件
import User from './components/User.vue'
import Product from './components/Product.vue' export default new VueRouter({ // 定义路由规则对象
routes: [
{path: '/home', component: Home},
{path: '/user/:id', component: User},
{path: '/product/:id', component: Product}
]
})
  1. 修改main.js文件 找到src/目录下的main.js文件, 共修改4处,添加路由引用、添加路由规则对象导入、启用路由、将路由键入到Vue中。
    修改此文件为:
// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue'
import App from './App'
import VueRouter from 'vue-router' // +++1、导入路由组件
import router from './approuter' // +++2、导入我们自己写的路由配置文件 // +++ 3、使用路由组件
Vue.use(VueRouter) /* eslint-disable no-new */
new Vue({
el: '#app',
template: '<App/>',
components: { App },
router: router // +++4、添加路由对象
})
  1. 在app.vue中添加路由导航

最终代码如下:

<template>
<div id="app">
<nav class="top-menu">
<ul >
<li v-for="item in menuList">
<router-link :to="item.url">{{ item.name }}</router-link>
</li>
</ul>
</nav>
<hr>
<div>
<router-view></router-view>
</div>
</div>
</template> <script>
export default {
name: 'app',
data: function () {
return {
menuList: [
{ name: '首页', url: '/home' },
{ name: '用户', url: '/user/19' },
{ name: '产品', url: '/product/20' }
]
}
}
}
</script> <style>
#app { }
.top-menu ul, .top-menu li {
list-style: none;
}
.top-menu {
overflow: hidden;
}
.top-menu li {
float: left;
width: 100px;
}
</style>

刷新一下浏览器,你将会看到最终的运行结果。


联系老马

对应视频地址:https://chuanke.baidu.com/s5508922.html
老马qq: 515154084
老马微信:请扫码

 
微信:Flydragon_malun 或者18911865673

08Vue.js快速入门-Vue综合实战项目的更多相关文章

  1. 09Vue.js快速入门-Vue入门之Vuex实战

    9.1. 引言 Vue组件化做的确实非常彻底,它独有的vue单文件组件也是做的非常有特色.组件化的同时带来的是:组件之间的数据共享和通信的难题. 尤其Vue组件设计的就是,父组件通过子组件的prop进 ...

  2. 06Vue.js快速入门-Vue组件化开发

    组件其实就是一个拥有样式.动画.js逻辑.HTML结构的综合块.前端组件化确实让大的前端团队更高效的开发前端项目.而作为前端比较流行的框架之一,Vue的组件和也做的非常彻底,而且有自己的特色.尤其是她 ...

  3. 07Vue.js快速入门-Vue路由详解

    对于前端来说,其实浏览器配合超级连接就很好的实现了路由功能.但是对于单页面应用来说,浏览器和超级连接的跳转方式已经不能适用, 所以各大框架纷纷给出了单页面应用的解决路由跳转的方案. Vue框架的兼容性 ...

  4. Vue.js+vue-element搭建属于自己的后台管理模板:Vue.js快速入门(二)

    Vue.js+vue-element搭建属于自己的后台管理模板:Vue.js快速入门(二) 前言 上篇文章对Vue.js有了初步理解,接下来我们把Vue.js基础语法快速的过一遍,先混个脸熟留个印象就 ...

  5. Node.js快速入门

    Node.js是什么? Node.js是建立在谷歌Chrome的JavaScript引擎(V8引擎)的Web应用程序框架. 它的最新版本是:v0.12.7(在编写本教程时的版本).Node.js在官方 ...

  6. JS快速入门(二)

    目录 JS快速入门(二) 结构图 BOM window对象 open() window子对象 location对象 history对象(了解) navigator 对象 screen对象 BOM 定时 ...

  7. MySQL数据库快速入门与应用实战(阶段一)

    MySQL数据库快速入门与应用实战(阶段一) 作者 刘畅 时间 2020-09-02 实验环境说明: 系统:centos7.5 主机名 ip 配置 slavenode3 172.16.1.123 4核 ...

  8. Vue.js—快速入门

    Vue.js是什么 Vue.js 是一套构建用户界面的渐进式框架.与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计.Vue 的核心库只关注视图层,它不仅易于上手,还便于与第三方库或既有项目 ...

  9. Vue.js—快速入门及实现用户信息的增删

    Vue.js是什么 Vue.js 是一套构建用户界面的渐进式框架.与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计.Vue 的核心库只关注视图层,它不仅易于上手,还便于与第三方库或既有项目 ...

随机推荐

  1. uploadify.js参数说明(转)

    一.属性 属性名称 默认值 说明 auto true 设置为true当选择文件后就直接上传了,为false需要点击上传按钮才上传 . buttonClass ” 按钮样式 buttonCursor ‘ ...

  2. 10个很棒的学习Android 开发的网站

    1. Android Developers 作为一个Android开发者,官网的资料当然不可错过,从设计,培训,指南,文档,都不应该错过,在以后的学习过程中慢慢理解体会. 2. Android Gui ...

  3. 【HTML】WWW简介

    www 什么是WWW www(world wide web),又称为万维网,或通常称为web,是一个基于超文本方式的信息检索服务工具. WWW的工作模式 C/S结构(client/server结构), ...

  4. Android Studio每日小技巧

    一般的什么快捷键,技巧的文章也有很多.我也看过很多.下面这些事我在来自国外大神发布的:Android Studio Tips of the Day查看到的,而且对于我来说有帮助的及没用过的. Andr ...

  5. Linux shell下30个有趣的命令

    Tips 原文作者:Víctor López Ferrando 原文地址:30 interesting commands for the Linux shell 这些是我收集了多年的Linux she ...

  6. [转]Greenplum的工作负载及资源管理

    工作负载及资源管理 查询分析-查看EXPLAIN输出 EXPLAIN输出一个计划为节点组成的树 每个节点表示一个独立的操作 计划应该从下向上读,每个节点得到的记录向上传递 成本评估项: cost - ...

  7. 翻译Java虚拟机的结构

    英文原版:  https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-2.html 直接谷歌翻译: Java SE规范 > Java虚拟机 ...

  8. A标签实现文件下载功能

    <a>可直接下载xls,doc,rar,zip,exe,js文件(图片跟txt文件是直接打开的) <a href="wKioJlJolKeCIzkCADd3Wf7OPI42 ...

  9. Mac下命令行下载android源代码并构建apk过程

    前提是java .sdk.ndk .cmake.gradle .gradlew都已经安装和配置好. 1.下载源码: git clone http://git-ma.xxxx.com.cn/xxxx/x ...

  10. 在ubuntu14系统中将redis-server设置为开机启动项

    1.redis安装完成后(我装的是redis-3.0.7),修改配置文件redis.conf,修改的项目如下 注意:以下内容都是在root用户下进行操作的 gedit redis.conf打开文件进行 ...