Vue小练习 02】的更多相关文章

用table标签渲染下面的数据, 最后一列为总分, 第一列为排名 scores = [ {name: 'Bob', math: 97, chinese: 89, english: 67}, {name: 'Tom', math: 67, chinese: 52, english: 98}, {name: 'Jerry', math: 72, chinese: 87, english: 89}, {name: 'Ben', math: 92, chinese: 87, english: 59},…
本文是小羊根据Vue.js文档进行解读的第一篇文章,主要内容涵盖Vue.js的基础部分的知识的,文章顺序基本按照官方文档的顺序,每个知识点现附上代码,然后根据代码给予个人的一些理解,最后还放上在线编辑的代码以供练习和测试之用:在最后,我参考SegmentFault上的一篇技博,对Vue进行初入的实战,目的是将新鲜学到的知识立即派上用场:如果你还是前端的小白,相信这篇文章可能会对产生一些帮助和引起思想的碰撞,因为大家的学习历程是相似的,遇到的困惑也有一定的共通性,如果文章出现谬误之处,欢迎各位童鞋…
上一篇文章<一个基于ES5的vue小demo>我们讲了如何用ES5,vue-router做一个小demo,接下来我们来把它变成基于ES6+webpack的demo. 一.环境搭建及代码转换 我们先搭建一下vue 的开发环境,根据我的一篇随笔<Vue开发环境搭建及热更新>,我们一步步搭建开发环境,project名为ES6-demo. 在之前我发表的一篇随笔< 理解最基本的Vue项目>中,说到了在放置组件和入口文件的src文件夹中,main.js文件就是入口文件,App.v…
由于现在很多vue项目都是基于ES6开发的,而我学vue的时候大多是看vue官网的API,是基于ES5的,所以对于刚接触项目的我来说要转变为项目的模块化写法确实有些挑战.因此,我打算先做一个基于ES5的vue小demo,再把这个demo写成基于ES6的,算是一个过渡吧!这个demo有一些代码借用于keepfool大神的<Vue.js--vue-router 60分钟快速入门>在此先解释一下,尊重原创!建议vue-rouer的相关知识可以跟着链接学习. 一.项目效果图 二.代码编写过程 1.功能…
实现效果: 点击对应商品,对应的商品详情页出现,详情页里面还有“Add to cart”按钮和“×”退出按钮. 点击“Add to cart”可以将商品加入购物车,每件商品只能添加一次,如果把购物车的对应商品删除就能再次加入. 商品加入购物车后,导航栏会出现商品数量和总价标识. 一.详情页的实现和其中的方法 1.在子组件literature.vue中写: 应该加一个data先定义一下selecGoods,但是prop中已经有了(prop优先级更高,而且可以父子传参),那就不用在data中写sel…
实现内容: axios取到的数据在前端使用(父子组件各自应该怎么使用) 一.简单使用(在哪取在哪用) 1.在App.vue中script中加上data(data专属于当前组件,父子组件传参通过prop,prop优先级高于data,这个我们稍后讨论),created中的this.xxx就指向data中的数据(简单来说就是先在data中定义) 2.我现在是直接在App.vue中写的getScience.getLiterature.getHumanity取得数据,要在App.vue中直接用的话这样写:…
实现内容: 写路由接口(express) axios取数据 一.写接口 1.我们要在前端取到后端的数据(之前写的data.json)可以用vue-resourse或者用axios,在vue2之后官方就不再维护vue-resourse,推荐使用axios. 2.在axios取到数据前要先写一下路由接口,不同版本vue-cli建的文件目录有一点不一样. 我用的是vue2.5.2,写路由接口是在build文件夹下的某文件,以下分别列出高版本和低版本写法: ①2.5.2版本 文件里加上这些程序: dev…
本项目基于vue2.5.2,与低版本部分不同之处会在(五)参考资料中提出 完整程序:https://github.com/M-M-Monica/bukesi 实现内容: 资源准备(mock数据) 组件拆分components(header.footer.literature.science.humanity) 路由router(router-link.router-view) 一.准备工作 1.首先开始一个项目第一步是准备工作. 2.准备工作包括需求分析和项目资源准备两大步. 需求分析就是思考想…
VUE小练习(按钮颜色,数组映射) ## 1.有红.黄.蓝三个按钮,以及一个200x200矩形框box, 点击不同的按钮,box的颜色会被切换成指定的颜色 ''' 解法一:我本来的思路,把三个按钮绑定到一个div中,然后通过DOM操作,利用方法拿到当前event,把当前标签的父标签的background换成相应的颜色,是很笨的方法.代码比较冗余,但是是我自己的思路,可以用css样式做一些技巧 ''' <!DOCTYPE html> <html lang="en">…
vue小故事之父子(上下级)通信之父传子props vue 父子(上下级)通信 props  或许你对父子通信有点迷糊,为什么这样那样父子之间就可以通信了,以下通过一个小故事来进行解说,故事模型或许有点牵强,如果能理解最好,不能理解请向我咨询. 知识回顾,请参考父子通信的前置知识,父子组件 https://www.cnblogs.com/singledogpro/p/12057238.html 对vue不太熟悉的,请参阅vue入门初体验 https://www.cnblogs.com/singl…
以下是我在使用vue过程中自己对vue的一些小总结,希望对学习vue的亲们能有所帮助: 1.   http的post请求: this.$http({url: '/someUrl', method: 'GET'}).then(function (response) {           // success callback       }, function (response) {           // error callback       }); eg1:this.$http.po…
在上一篇文章中我们已经学习了vue的基本语法,常用属性,了解了vue的基本使用,现在让我们用vue配合Bootstrap来完成一个小项目. 首先导入Bootstap文件. <link rel="stylesheet" type="text/css" href="css/bootstrap.css"/> 导入完成后,用Boostrap的各种组件,完成一个基本的页面: <div id="app"> <…
众所周知,我们写vue项目的时候都会创建很多个文件,尤其是一些中大型项目,会有很深的文件夹,当你去引入的时候,要写很长的路径比如我要引入一个css文件, 必须得 import  '../../../styles/iconfont.css' ,文件放的越深,路径就越长,所以我来说一个小技巧. 当我们刚开始创建好vue项目的时候看到一些文件引入的前面有一个@符号,这个符号的意义是什么呢? 我们打开build文件下的webpack.base.conf.js,用Ctrl+f搜索@,找到之后你会看到 '@…
一.前言 this.$router.go(-1)返回上级路由 二.主要内容 1.小功能演示: 2.组件之间的嵌套关系为: 3.具体实现 (1)由于这种返回按钮在每个页面中的结构都是一样的,只是里面的数据不一样,所以我们可以把这个“返回按钮”设置成一个公共组件,然后在每个页面中使用 (2)将功组件单独放到一个common文件夹中,如下 (3)在main.js文件中将这个公共的Navbar.vue注册成一个全局的组件 //注册全局导航栏组件 import Navbar from '@/compone…
代码学习过滤器 过滤器介绍:过滤模型数据,在数据显示前做预处理操作: 内置过滤器:在1.x中,Vue提供了内置过滤器,但是在2.x中已经完全废除: 解决办法: (1)使用第三方库来替代1.x中的内置过滤器: (2)使用自定义过滤器: 自定义过滤器: a.全局配置:Vue.filter( id, [definition] ) b. 局部配置:在Vue实例中配置filters 详细介绍网址:https://cn.vuejs.org/v2/api/#Vue-filter 过滤器语法: 无参:{{msg…
var Toast={}; Toast.install = function (Vue, options) { let opt = { defaultType:'bottom', // 默认显示位置 duration:'2500' // 持续时间 } if(options){ console.log(JSON.stringify(options)) for(let property in options){ opt[property] = options[property]; // 使用 opt…
案例需求: 创建一个品牌展示表格,表头有编号(id),品牌名称(name),创建时间(time)和操作,需要实现的功能是对数据的增删操作,和时间的格式化. 思路分析:在开发之前需要想清楚要用到Vue中的什么方法或者特性来实现所要的功能,把案例分成以下几个部分来开发: 展示数据,需要使用v-for指令 删除数据,需要使用v-on绑定一个事件 添加数据,需要使用双向数据绑定 时间的格式化,需要使用过滤器 实现步骤: 1.开发静态模板 <!DOCTYPE html> <html> <…
最近一直在用react开发项目,碰见的问题千千万,很多,但是都殊途同源,唯一区别大的就是没有像vue的双向绑定,也没有小程序的单向方便,比如: vue   v-modal="msg"   直接就可以绑定 小程序 value={msg}    改变值的时候就需要  setData 去改变值 react就麻烦很多  <input value={msg} onChange={change} />  change=()=>{this.setState({msg:event.t…
一.小案例(评论区) 1.流程 (1)分析静态页面.(vue项目创建参考https://www.cnblogs.com/l-y-h/p/11241503.html)(2)拆分静态页面,变成一个个组件.(3)对组件编码,生成动态页面. 2.静态页面 参考来源:https://www.bilibili.com/video/av49099807/?p=22&t=1223 [举例:] <!DOCTYPE html> <html> <head> <meta char…
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>小清单</title> <link rel="stylesheet" href="../bootstrap/bootstrap/css/bootstrap.min.css"> <style> /…
大家好,我是河畔一角,今天给大家介绍我的第三门实战课程:基于微信开发的H5.小程序和小程序云的授权.支付和分享专项课程. 一.这一次为什么会选择微信支付和分享的课题呢? 金庸的小说中曾提到:有人的地方就有江湖.微信的月活达到10亿,因此微信的生态和江湖再中国无疑是巨无霸,既然是江湖,那必然少不了厮杀和争斗. 纵观国内市场,支付两大巨头微信和支付宝,得益于微信的社交基因,恰恰是我们前端开发者的天然战场,再公司的业务当中,我们的营销活动.公众号.小程序.微信H5等等无一不是我们前端必学技能.必备杀手…
这个小案例主要时练习v-model的使用,功能并不完善 <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv=…
自学Vue课程中学到的一个小案例,跑马灯效果 <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="…
基于vue-cli 3.x,配合typescript的环境构建的新vue项目,跟以前的结构相比,有了一些变化,下面我们来简单的了解一下 基本结构: node_modules: 项目中安装的依赖模块 public: 主页文件index.html && favicon.icon(将以往单独在外部的index.html移到了public文件夹下),index.html我们可以像平时普通的html文件一样引入文件(css,js)和书写基本信息,添加meta标签等. src: 源码文件夹,基本上我们…
    最近在练手一个小项目,想给首页增加一个视频介绍(如下图).涉及到了vue视频播放的功能,所以在网上了解了一下.     相关的插件是Video.js,官网讲解比较详细,我罗列出来,可以根据自己需要去查看. 官网地址:     1.video.js整合vue的地址:https://docs.videojs.com/tutorial-vue.html     2.video.js框架API的地址:https://docs.videojs.com/tutorial-options.html 简…
前台界面: 后台代码: namespace ado.net小项目cuid {     public partial class Form1 : Form     {         //连接字符串         string str = @"Data Source=.\SQLEXPRESS;Initial Catalog=Test;Integrated Security=True";         public Form1()         {             Initi…
时隔多月,继续学习Vue,这次是一个组件的制作过程 先让我们来看一下组件的预期效果 上图为公司自营的一个微信商城的某一部分截图,可以看到红框内部分的文字多行与单行是居中对齐的,我们现在要做的就是使用Vue把里边的文字模块制作成一个可以复用的组件. 首先我们先把css部分拿下来 css: .word-v-middle{ margin-bottom: 0; font-size: 12px; min-height: 31px; display: flex; align-items: center; j…
1.在使用<transiton>添加过渡效果时,对应的标签需使用<router-link>,否则,transition不会达到应有的效果. 2.在路由文件里获取根实例时,需通过router.app获取 router.beforeEach((to, from, next) => { let nowState = router.app.$pomelo.fetch('loginState') if (to.meta.login === true) { if (nowState ==…
一.前言         1.用vuex实现加入购物车操作 2.购物车详情页面          3.点击删除按钮,删除购物详情页面里的对应商品 二.主要内容 1.用vuex加入购物车 (1)在src目录下创建store.js, import Vue from 'vue' import Vuex from 'vuex' Vue.use(Vuex) export default new Vuex.Store({ //vuex五大将 state:{ num:1//小球的数量默认为1 }, gette…
一.前言 在上篇购物车中,如果用户刷新了当前的页面,底部导航中的数据又会恢复为原来的: 1.解决刷新,购物车上数值不变                                                           2.在购物车点击加减按钮,数值做出对应变化 二.主要内容 1.实现效果:点击购物车的时候可以查看到购物车的商品信息 2.解决刷新,购物车上数值不变 (1)新建一个Cart.vue展示购物信息,并将路由添加到index.js中 (2)购物车里面涉及到:存储商品信息,…