为您找到搜索结果:2365个
vue的hover事件
使用Vue来实现鼠标悬停效果。可以使用事件处理器v-on指令(简写为:@)来完成。为标签绑定mouseenter以及mouseleave事件即可。<template><div><ul><templatev-for="(item)initems"><li@mouseover="selectStyle(item)":class="{'active':item.active}"@mouseout="outStyle(item)">{{item.select}}<spanclass="icon"v-show="item.active">{{item.icon}}</span></li></template></ul></div></template><script>exportdefault{data(){return{active:false,items:[{select:'第一行',icon:1},{select:'第二行',icon:...
vue项目中使用v-if判断数组长度length报错
Error in render: "TypeError:Cannotreadproperty'length'ofundefined"解决方法:shopListData.attrs!==undefined&&shopListData.attrs.length>0 ...
vue深度监听对象
watch:{picker:{//为对象名handler(){//对象内数据变化会执行此方法document.getElementById('nowColor').style.color=this.picker.color},deep:true//深度监听申明字段}} ...
Vue过滤器的使用
<!DOCTYPEhtml><html><head><metacharset="utf-8"><title>vue过滤器</title></head><body><divid='app'><h1>{{msg|filterName}}</h1></div><scriptsrc="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script><script>varvm=newVue({el:'#app',data:{msg:'1'},filters:{filterName(val){constfilterNameMap={'0':'待确认','1':'待发货','2':'待收货','3':'待付款','4':'待收款','5':'已完成'}returnfilterNameMap[val]}}})</script></body></htm...
jQuery和Vue操作select示例
jQuery操作select示例<divid="example"><selectid="select1"></select><pid="p1">Result:</p></div><script>$(document).ready(function(){letdata=[{id:1,name:'A'},{id:2,name:'B'},{id:3,name:'C'}];//添加optionfor(letitemofdata){$("#select1").append(`<optionvalue="${item.id}">${item.name}</option>`);}//监听change$("#select1").change(function(){letval=$("#select1option:selected").val();lettxt=$("#select1option:selected").text();$("#p1").text(`Result:${val},${tx...
css怎样设置div边框的属性
border-color:#000设置4边边框颜色为黑色;border-color:+颜色值,即可设置对象边框颜色;border-left-color:#000设置左边框颜色为黑色;border-right-color:#000设置右边框颜色为黑色;border-top-color:#000设置上边框颜色为黑色;border-bottom-color:#000设置下边框颜色为黑色;条件:必须设置对象边框存在,设置边框宽度必须大于或等于1px,边框颜色才会显示并有存在意义。.cssborder{border-style:solid;border-width:1px;border-color:#000} ...
css实现div边框阴影
<styletype="text/css">.div_shadow{width:600px;height:450px;border:#9090901pxsolid;background:#fff;color:#333;-ms-filter:"progid:DXImageTransform.Microsoft.Shadow(Strength=4,Direction=135,Color='#000000')";/*ForIE8*/filter:progid:DXImageTransform.Microsoft.Shadow(Strength=4,Direction=135,Color='#000000');/*ForIE5.5-7*/-moz-box-shadow:2px2px10px#909090;/*forfirefox*/-webkit-box-shadow:2px2px10px#909090;/*forsafariorchrome*/box-shadow:2px2px10px#909090;/*foroperaorie9*/}</style> ...
vue导航条怎样去掉#
VUE默认是hash浏览模式,换成history可以去掉#exportdefaultnewRouter({mode:'history',routes:[]}) ...
Vue(5)- axios、vuex
一、内容回顾1、webpack(前端中工作,项目上线之前对整个前端项目优化) -entry:整个项目的程序入口(main.js或index.js); -output:输出的出口; -loader:加载器,对es6代码的解析,babel-loader(官网:https://www.babeljs.cn/)是浏览器支持es6,css-loader解析css文件,style-loader将css代码添加一个style标签插入header标签中,url-loader等等; -plugins:有很多,比如html-webpack-plugin,丑陋等等;二、vue项目中常见问题 我们已经学过如何使用脚手架创建一个vue项目,接下来我们介绍一下vue项目中的常见问题。1、使用vue-cli脚手架和webpack模板生成一个项目(以项目名为luffy-project为例),步骤如下:vueinitwebpackluffy-project//创建项目(使用单页面应用就安装vue-router,其他选no)cdluffy-pr...
Vue(4)- 获取原生的DOM的方式、DIY脚手架、vue-cli的使用
一、获取原生的DOM的方式 在js中,我们可以通过id、class或者标签获取DOM元素,vue中也为我们提供了获取原生DOM的方法,就是给标签或者组件添加ref属性,通过this.$refs获取,如下:<divid="app"></div><scriptsrc="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script><script>//创建一个全局组件TestVue.component('Test',{data(){return{}},template:`<div>我是测试组件</div>`});//创建一个全局组件Test2Vue.component('Test2',{data(){return{}},template:`<div>我是测试组件2</div>`});//声明一个局部组件AppletApp={data(){return{}},template:`<divclass="app"><inpu...
Vue(3)- 安装脚手架、过滤器、生命周期的钩子函数、vue-router基本使用
一、安装脚手架1、下载node.js,本文下载版本为node-v8.12.0-x64.msi,一键式安装。2、安装完成后,打开终端,输入node,可进入node环境(两次ctrl+c退出),如下图:3、查看版本,如下图:4、在成功安装node.js(即能够成功查看版本如上图)的前提下,再安装淘宝npm(http://npm.taobao.org/),命令如下:npminstall-gcnpm--registry=https://registry.npm.taobao.org 执行结果如下:5、安装脚手架 依次执行下面两条命令:npminstall-g@vue/clinpminstall-g@vue/cli-init//注释:这是拉取cli版本2的命令 CLI3版本的文档:https://cli.vuejs.org/zh/guide/ CLI2版本的文档:https://github.com/vuejs/vue-cli/tree/v2#vue-cli--6、执行完毕后输入vue-V验证是否成功,如下图:二、过滤器 1、过滤器分为局部过滤器和全局过滤器,定义和使用如下:&...
Vue(2)- v-model、局部组件和全局组件、父子组件传值、平行组件传值
一、表单输入绑定(v-model指令) 可以用v-model指令在表单<input>、<textarea>及<select>元素上创建双向数据绑定。 详细用法参见官方文档:https://cn.vuejs.org/v2/guide/forms.html二、局部组件和全局组件1、了解根组件template模板的优先级大于el,如下方式验证:<divid="app">{{msg}}</div><script>//如果仅仅是实例化vue对象中既有el又有template,//如果template中定义了模板的内容那么template模板的优先级大于elnewVue({el:'#app',data(){return{msg:'alex'}},template:`<divclass="app">//通过控制台可看到显示了template中定义的div<h2>{{msg}}</h2></div>`})</script>2、局部组件的使用(声子,挂子,用子)<...
Vue(1)- es6的语法、vue的基本语法、vue应用示例,vue基础语法
一、es6的语法1、let与var的区别 ES6新增了let命令,用来声明变量。它的用法类似于var(ES5),但是所声明的变量,只在let命令所在的代码块内有效。如下代码:{ leta=10; varb=1;}a//ReferenceError:aisnotdefined.b//1 上面代码在代码块之中,分别用let和var声明了两个变量。然后在代码块之外调用这两个变量,结果let声明的变量报错,var声明的变量返回了正确的值。这表明,let声明的变量只在它所在的代码块有效。 for循环的计数器,就很适合使用let命令,如下代码:for(leti=0;i<10;i++){ //...}console.log(i);//ReferenceError:iisnotdefined 上面代码中,计数器i只在for循环体内有效,在循环体外引用就会报错。2、var变量提升现象,如下代码:vara=[];for(vari=0;i<10;i++){ a[i]=function(){ console.log(i); };}a[6]();//10 上面代码中,变量i...
在vue-cli生成的项目中使用karma+chrome进行单元测试
用vue-cli生成项目时,如果选择了单元测试,那么会采用karma+mocha作为单元测试框架,默认使用的浏览器是PhantomJs。 Karma是一个基于Node.js的JavaScript测试执行过程管理工具(TestRunner)。可启动所有主流Web浏览器作为测试容器,运行时会启动一个web服务器,生成包含js源代码和js测试脚本的测试页面,运行浏览器加载测试页面,并显示测试的结果。 mocha是一款JavaScript测试框架,提供一套函数来帮助编写测试用例,并通过运行执行测试并得到结果。 PhantomJs是基于webkit内核的无UI界面的浏览器,即它就是一个浏览器,只是其内的点击、翻页等人为相关操作需要程序设计实现。浏览器支持参考:http://karma-runner.github.io/0.13/config/browsers.htmlhttps://github.com/karma-runner/karma-chrome-launcher 因为是要在chrome环境里跑测试,所以需要安装chrome对应的luncher。&...
在vue-cli搭建的项目中在后台mock接口中支持req.body和req.cookies
在《vue-cli搭建的项目中增加后台mock接口》中实现了后台mock,但是前端post的t数据都要在mock的后台接口中使用req的接收数据事件获取http协议body中的数据。req.on('data',function(chunk){//接收字节数据});req.end('data',function(){//转换||处理});req.error('error',function(e){//处理错误});如果前端需要使用cookie,后端要读取,那么在后台mock的接口中还要获取req的headers,并从中取得cookie字符串,自己还要分割处理等等。 当然这样是可以的,但是比较麻烦,从接收数据到转换都要自己做。vue-cli搭建的项目是用express作为node.js的web框架,它支持丰富的中间件。对应上述问题,有body-parser和cookie-parser中间件可以方便地将post的body中的数据和cookie自动提取成req.body和req.cookies对象供人使用,非常方便。 安装中间件npminstallbody-parser--...