Vue2实践揭秘 - 书,读后作了一个简单摘要

jd上买了本实践相关的, 看过后,的确是实践项目后的一些分享,有些网上的一些vue2教程没怎么提及
-----------
看完了,有些启发,作了个简单摘要作记录, 对vue2感兴趣的,可以自己网上搜些教程看或买本书看,书是对这的一个梳理。
以下内容为看后,觉得有些帮助的.... 分享如下:
-----------------------------------
第1章
a.render的使用
import Vue from 'vue'
import App from './App.vue'
new Vue({
el:'#app',
render: h => h(App);
})
b.组件模板
<template>
<div id="App"></div>
</template>
<script>
export default{
name:'app'
}
</script>
<style>
</style>
如果希望样式只对当前组件起作用
<style scoped>
@import './assets/todos.less'
</style>
------------------
第2章
a. 用脚手架vue-cli 创建项目
vue init webpack my-project
b. 命名方式约定
src 目录下: 公共组件(components) 、指令(directives)、过滤器(filters)
目录名小写,多于2个的中间用 ‘-’ ,如: login
vue文件名,都用大写驼峰 ,如: LoginForm.vue ItemLists.vue
目前的入口文件用小写 index.vue
c. 组件引用用 别名取代路径引用
在 webpack.base.config.js 中 , 如:
module.exports = {
.....
resolve:{
extension:['','.js'],
alias:{
'bs-select':'bowe_components/bootstarp-select/dist/js/select.js'
}
}
}
-----
其他地方引用
import Selector from 'bs-select'
------------------
第3章
a. 路由,在main.js中加入
import Vue from 'vue'
import VueRouter from 'vue-router'
Vue.use(VueRouter)
b. 众多的路由信息,最好写成一个独立的js文件,如 routes.js
在main.js中修改
import Vue from 'vue'
import App from './App.vue'
import router from './config/routes'
new Vue({
el:'#app',
router
render: h => h(App)
})
----------
routes.js 中如下
import Vue from 'vue'
import VueRouter from 'vue-router'
import Home from './Home.vue'
import Cart from './Cart.vue'
import Me from './Me.vue'
Vue.use(VueRouter)
export default new VueRouter({
mode:'history',
base: __dirname,
routes:[
{path:'/',component:Home},
{path:'/Cart',component:Cart},
{path:'/Me',component:Me}
]
})
c. 页面上不直接使用路由定义, 如: <router-link to="./Cart"></router-link>
路由中要调整更改为
routes:[
{name:'Home',path:'/',component:Home},
{name:'Cart',path:'/Cart',component:Cart},
{name:'Me',path:'/Me',component:Me}
]
------
页面上 <router-link :to="{name:'Home'}" ></router-link> , 这个地方是:to ,这是要传入一个对象而不是字符串
如是动态路由 <router-link :to="{name:'BookDetails',params:{id:1}}"></router-link>
history中router-link的三种模式:
默认调用 push , replace , append
<router-link :to="{name:'Home' replace}"></router-link> , 就没有histiory 记录
<router-link :to="{path:'releatice/path' append}"></router-link> , 如原来是a,现在的单是b, 最终效果是 a/b
------------------
第4章
组件的对应关系
组件注册名称 BookList , 模块标记 book-list
html 中
<div class="section">
<book-list :books="latestUpdated" heading="最新更新">
</book-list>
</div>
<div class="section">
<book-list :books="recommended" heading="编辑推荐">
</book-list>
</div>
在home页 中把他引入
import BookList from './components/BookList.vue'
export default{
data(){
.....
},
components:{BookList},
....
}
------
服务端取数据, 安装 vue-resource
main.js 中加入并使用
import VueResource from 'vue-resource'
Vue.use(VueResource)
还可以在 new Vue 时做点事,如
new Vue({
http:{
root:'/api',
headers:{}
},
....
})
-----
使用了vue-resource 后, 会自动注入一个 $http的对象
原来的jquery ajax ,如:
$.get('/api/home').then(res =>{
self.annoouncement = res.annoouncement
self.slides = res.slides
self.latestUpdated = res.latestUpdated
self.recommended = res.recommended
})
可以优化为
this.$http.get('/api/home').then(res =>{
for prop in res.body{
this[prop] = res.body[prop]
}
},(error) =>{
console.log('获取数据失败')
})
---------
第5章 测试内容相关,先放放
调试 Vue-DevTools
----
第6章
视图和表单处理
推荐了一个模板 UIkit
更多细节需要实践...... more TODO
http拦截器 inteceptor ,基本用法
Vue.http.interceptors.push((request,next)=>{
//请求发送前的处理逻辑
//如加入 弹窗等....
next((response) =>{
//请求发送后的处理逻辑
// 关闭弹窗
return response
})
})
----
第7章
vuex 的使用, 较多
data的替代者 : state 和 getter
action 操作的执行者
只用 mutation 修改状态
服务分离
Vue2实践揭秘 - 书,读后作了一个简单摘要的更多相关文章
- Vue2 实践揭秘 错误列表
京东上的购买地址 作者是土生土长的聪明中国人 https://item.jd.com/12176536.html 64页 const bookID = this.$router.params.id 搞 ...
- C语言搬书学习第一记 —— 认识一个简单程序的细节
#include<stdio.h> /*告诉编译器把stdio.h 中的内容包含在当前程序中,stdio.h是C编译器软件包的标准部分,它提供键盘输入和 屏幕输入的支持studio.h文件 ...
- 《Vue2.0 实践揭秘》终于出版啦!
不知不觉间在园子开博都两年多了,最近一些园友问最近去哪了为何都没有新的文章了.最近确实发生了很多的事,一是忙工作二就是忙着写书.这还得多些园子的小编,自两年前发表的"架构师修炼"系 ...
- Code Complete 读后总结和新的扩展阅读计划
Code Complete 读后总结和新的扩展阅读计划 用了一年时间终于将代码大全读完了,在这里做一个简单的总结,并安排下一阶段的扩展阅读计划. 1.选择代码大全作为我程序员职业入门的第一本书,我认为 ...
- 《JavaScript DOM编程艺术》读后总结
这是我读的第一本关于JS的书,刚开始我为了选择合适的学习JS的书,看了网上许多人的意见,基本上都是推荐先读这本书.书的内容挺简单的,确实很适合初学者看,阅读的过程中不会产生什么障碍.内容虽然简单,但我 ...
- 实践GTD三周年后的体会
从2011年7月开始实践GTD到现在已经3年多了,按照年初设定的目标,应该写点GTD的体会,但提起笔来的时候却发现并没有什么太新的体会,大部分体会都已经在以前的文章中写到了,甚至有些流程已经简化了,看 ...
- 新生 & 语不惊人死不休 —— 《无限恐怖》读后有感
开篇声明,我博客中“小心情”这一系列,全都是日记啊随笔啊什么乱七八糟的.如果一不小心点进来了,不妨直接关掉.我自己曾经写过一段时间的日记,常常翻看,毫无疑问我的文笔是很差的,而且心情也是瞬息万变的.因 ...
- [No000062]读书八字诀:怎样将书读得通透?
从吃透到通透 有种说法,吃透一本书,才算好好读过.然而比吃透境界更高,是通透.吃透仅限于书中内容,通透则是将书中内容与正反上下.古今中外背景知识相互关联. 当你做到读书通透,收获将远远大于手头那一本书 ...
- 学习PHP爬虫--《Webbots、Spiders和Screen Scrapers:技术解析与应用实践(原书第2版)》
<Webbots.Spiders和Screen Scrapers:技术解析与应用实践(原书第2版)> 译者序 前言 第一部分 基础概念和技术 第1章 本书主要内容3 1.1 发现互联网的真 ...
随机推荐
- linux如何安装和启动mongdb
1.下载安装包 下载地址: https://www.mongodb.com/dr/fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.9.tgz/dow ...
- 使用InstallUtil安装及卸载Windows服务的具体操作 Visual Studio 2012版本
关于Visual Studio 2012中使用InstallUtil对Windows服务进行安装与卸载的文章,在MSDN中的http://msdn.microsoft.com/en-us/librar ...
- Java并发编程——阻塞队列BlockingQueue
Java 并发编程系列文章 Java 并发基础——线程安全性 Java 并发编程——Callable+Future+FutureTask java 并发编程——Thread 源码重新学习 java并发 ...
- ubuntu设置root权限默认密码
1.默认root密码是随机的,即每次开机都有一个新的root密码.我们可以在终端输入命令 sudo passwd,然后输入当前用户的密码2.终端会提示我们输入新的密码并确认,此时的密码就是root新密 ...
- Jmeter创建FTP测试计划
创建FTP测试计划 在这一章,你将学习如何创建一个基础的测试计划来测试FTP站点.你将在一个FTP站点上的两个文件中创建四个用户来发送请求.并且,你将告诉用户运行测试两次.所以,总的请求数是(4个用户 ...
- 如何自己编译生成hadoop的eclipse插件,如hadoop-eclipse-plugin-2.6.0.jar
不多说,直接上干货! 如何自己编译生成Eclipse插件,如hadoop-eclipse-plugin-2.6.0.jar 一.相关软件的安装和配置 (一)JDK的安装和配置 Jdk 1.7*安装并配 ...
- Javac之关于方法的调用1
方法的调用从Attr类的visitApply()方法进入,如下: /** Visitor method for method invocations. * NOTE: The method part ...
- 师傅领进门之6步教你跑通一个AI程序!
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由云计算基础发表于云+社区专栏 源码下载地址请点击原文查看. 初学机器学习,写篇文章mark一下,希望能为将入坑者解点惑.本文介绍一些机 ...
- 用尾递归和普通递归实现n!算法,二者比较
尾递归 - Tail Recursion尾递归是针对传统的递归算法而言的, 传统的递归算法在很多时候被视为洪水猛兽. 它的名声狼籍, 好像永远和低效联系在一起.尾递归就是从最后开始计算, 每递归一次就 ...
- IOS折线图
做项目要统计商品的销售情况,美工那边给了效果图,自己就按照效果图自定义了一个ScrollView.整体效果不错,在做的过程中遇到的问题也记录一下. 现在这个还有许多优化的地方: 1.一个表中只能画一个 ...