
vue
vue走过的坑
zky的博客
技术,贵在学习,贵在坚持,贵在分享
展开
-
Failed to load resource: net::ERR_FILE_NOT_FOUND
vue打包之后报错:【vue-cli3踩坑】Failed to load resource: net::ERR_FILE_NOT_FOUND1.vue.config.js中设置module.exports = { publicPath: ‘./’ }src/router.js中,干掉mode (搭建脚手架3.0中会默认生成下方,把他给删掉,然后在配置vue.config.js的默认路径就可以了)2.export default new Router({// mode: ‘history’)}原创 2020-11-16 13:41:01 · 1888 阅读 · 1 评论 -
vue中axios的封装
https://juejin.im/post/5b55c118f265da0f6f1aa354 掘金的网址(很好)一、axios的封装在vue项目中,和后台交互获取数据这块,我们通常使用的是axios库,它是基于promise的http库,可运行在浏览器端和node.js中。他有很多优秀的特性,例如拦截请求和响应、取消请求、转换json、客户端防御cSRF等。所以我们的尤大大也是果断放弃了对其官方库vue-resource的维护,直接推荐我们使用axios库。如果还对axios不了解的,可以移步a转载 2020-11-05 10:12:50 · 375 阅读 · 0 评论 -
vue连续点击重复路由报错解决方法
就想要个勋章原创 2020-10-24 05:02:09 · 1254 阅读 · 1 评论 -
Css之a.active和a:active的区别
a.active和a:active的区别a.active 是对class=active的a标签生效,(vue中可以动态绑定class配合点击事件使其变色,)a:active 是对按下的a标签生效原创 2020-10-16 14:16:13 · 789 阅读 · 0 评论 -
JS中的split()对多个分隔符的处理
JS中的split()对多个分隔符的处理split是js用来拆分字符串的,以什么字符分割,返回的是一个数组//split也可以,以两个不同的字符进行分割,这样就可以借用正则来去解决let string = "1%2-3"//这里想要以 % 和 * 两个不同的字符进行分割,可以这样写let sp = string.split(/%|-/gi));...原创 2020-10-09 16:06:31 · 3844 阅读 · 0 评论 -
vue中的$forceUpdate
$forceUpdate的作用强制更新数据在vue项目中,当你改变data数据源中的数据时,发现页面没有及时的去渲染,这时候可以调用this.$forceUpdate();方法去强制刷新页面首先我们知道在vue中,数据的绑定都不用我们操心,例如在data中有一个msg的变量,你修改它,那么在页面上,msg的内容就会自动发生变化。但是如果对于一个复杂的对象,例如一个对象数组,你直接去给数组上某一个元素增加属性,或者直接把数组的length变成0,vue就无法知道发生了改变,当时你也可以使用$set方法去改原创 2020-08-21 16:14:42 · 563 阅读 · 0 评论 -
vue.js:634 [Vue warn]: Duplicate keys detected: ‘0‘. This may cause an update error
报错的原因: 该页面中,两个(或以上)v-for并列存在,并且序列号都使用的是index代号,所以导致冲突。解决办法: 分别写不同的序列下标,比如 i j ,或者加前后缀如 'i’等错误写法<ImgRa :data="item" v-for="(item,index) in qualificationContent" :key="index" /><ImgRa :data="items" v-for="(item,index) in qualificationContent"原创 2020-07-27 17:21:12 · 787 阅读 · 0 评论 -
vue中mixins的使用方法和注意点
mixins基础概况混入 (mixins): 是一种分发 Vue 组件中可复用功能的非常灵活的方式。混入对象可以包含任意组件选项。当组件使用混入对象时,所有混入对象的选项将被混入该组件本身的选项。具体应该怎么用?举个栗子: 一、定义公共的mixins文件:如mixin.vue<template> <...转载 2020-07-17 17:11:20 · 2349 阅读 · 0 评论 -
vue中插槽的使用详解
插槽也就是slot,是组件中的一块html模板,这模板显示不显示,以及怎样显示由父组件来决定。插槽的使用场景,个人理解勿喷:当你在父组件中想要操作子组件,往子组件插入html代码片段的时候,这时候插槽的作用就是体现了,如果子组件不设置插槽,父组件是插入不了子组件中的代码片段的。单个插槽单个插槽可以放置在组件的任意位置,但是就像它的名字一样,一个组件中只能有一个该类插槽。相对应的,具名插槽就可以有很多个,只要名字(name属性)不同就可以了。看代码父组件 <template>原创 2020-07-10 19:38:06 · 698 阅读 · 0 评论 -
vue中把对象中所有的key赋为空值
Object.assign的使用,当然你也可以使用for去遍历 然后再一一去赋值为空字符串,推荐使用(Object.assign)先来看看Object.assign的基本用法Object.assign方法用于对象的合并,第一个参数(目标对象),可以有第二个,第三个参数,都是源对象,将源对象(source)的所有可枚举属性,复制到目标对象(target)。const target = {a:1};const source1 = { b: 2 };const source2 = { c: 3 };原创 2020-07-10 18:54:13 · 5830 阅读 · 0 评论 -
运行vue项目 npm ERR! missing script: dev npm ERR! A complete log of this run can be found in: npm ERR!
运行vue项目 npm ERR! missing script: dev npm ERR! A complete log of this run can be found in: npm ERR!npm ERR! missing script: devnpm ERR! A complete log of this run can be found in:npm ERR! C:\Users\binglian\AppData\Roaming\npm-cache_logs\2019-08-13T08原创 2020-07-06 19:31:15 · 806 阅读 · 0 评论 -
vue 循环多个标签,点击标签变色,再点击取消,可以同时点击多个
vue 循环多个标签,点击标签变色,再点击取消,可以同时点击多个要实现的效果html代码<div :class="{clickColor:spanIndex.indexOf(i)>-1}" v-for="(v,i) in banksData" v-text="v.name" @click="banksClick(i)"></div>css代码 .clickColor { border: 2px solid rgba(7, 167, 227, 1) !原创 2020-06-24 17:37:25 · 1475 阅读 · 0 评论 -
vue中使用vuex详解
vue中使用vuex首先创建一个store文件夹 在srore文件夹下 创建一个index.jx文件(文件夹命名看个人爱好)State的使用(类似vue实列中的data数据源,来存取数据)index.js文件中的内容import Vue from 'vue'import Vuex from 'vuex'Vue.use(Vuex);const store = new Vuex.Store({ state:{ count:0 }})export defaul原创 2020-06-20 15:48:42 · 309 阅读 · 0 评论 -
vue组件之间的传参详解(父子,兄弟组件)
vue常用的传值 ,无非就是父子之间,或者兄弟之间去传值,下边一一介绍他们之间如何传参父=>子father.veu(父组件)<template> <div> 父组件:{{message}} <Son :toSonData="toSonData"></Son>//在components注册的子组件 </div></template> <script>import Son原创 2020-06-19 11:41:25 · 647 阅读 · 0 评论 -
VS Code常用插件安装
常用VS Code插件安装**打开刚刚安装好的 VS Code **点击类似正方形搜索以下的常用插件(直接搜索图标对应的英文 点击Install即可完成安装)。亲测 ,好用安装完成之后 ,最后重启VS Code 即可原创 2020-06-13 14:03:46 · 381 阅读 · 0 评论 -
Vue.js报错—TypeError:Cannot read property key of undefined
报这个错误的原因,一般就两种情况html页面渲染的时候。双{{value.key}}插值或者v-text="value.key"中找不到这个key,报undefined还有就是v-for循环的时候 绑定的:key="tag,name" 这个name未定义,希望可以解决你的问题。。如果帮助到你了,记得点赞关注啊...原创 2020-06-04 13:41:09 · 6506 阅读 · 0 评论 -
vue实现锚点跳转之scrollIntoView()方法
滚动到某个特定元素 :scrollIntoView();这个方法不用获取右边小标题的高度,啥都不用,有id或者class就行啦,几乎可以满足你锚点跳转的所有需求,对齐方式,以及平滑滚动了这里是v-for循环出来需要点击跳转到对应div的事件<p> v-for="(value,index) in data" @click="scrollToPosition(index)">{{...}}</p> 这就是你点击scrollToPosition事件需要滚动对应的div&l原创 2020-06-06 14:21:57 · 7569 阅读 · 4 评论 -
for循环中异步请求问题
今天遇到一个需求就是,需要在for循环中,进行axios异步请求。一般这个这个时候就遇到两个问题因为你的请求是在for循环中,而且又是异步的请求所以,请求出来的数据顺序错乱还有就是在for里 等所有的异步请求完成之后,再去处理数据。这时你就会发现。它是先走了异步请求下边的代码,因为这个是线程问题,在一个就是异步的,它不会等着你完成请求之后再去执行。因为JS运行在浏览器中,是单线程的for (let i = 0; i < 5; i++) { setTimeout(function() {原创 2020-06-05 18:50:30 · 8173 阅读 · 0 评论 -
vue中使用Promise解析
Promise 是异步编程的一种解决方案,其实是一个构造函数,es6写法中其实也是async和awaitasync和await用法看这https://blog.youkuaiyun.com/qq_46124502/article/details/106384588Promise 一般是放在函数内部使用function promiseData() { return new Promise((resolve, reject) => { //resolve成功时的回调,reject失败时的回调 consol原创 2020-06-02 18:05:02 · 3371 阅读 · 0 评论 -
vue 中使用style class(样式)
vue中使用style样式<div id="app"> <h1 :style="styleObj1">111</h1> <h1 :style="[styleObj1,styleObj2]">222</h1></div> <script> //创建Vue实例 得到ViewModel var vm = new Vue({ el:"#app", data(){ r原创 2020-06-01 17:49:55 · 634 阅读 · 2 评论 -
vue中使用async和await处理异步
写项目经常碰到先进性一个axios请求,然后在进行下一个axios请求,但是此次的请求需要,用到上一次请求返回来的参数,因为axios是异步的,所以可以axios请求嵌套获取,但当数据多的时候,页面会非常的乱,此时就需要用到async和await的使用,使上述情况就好像写同步代码一样,请看例子这是两个axios请求的函数//第一个function axiosOne(){returen axios.get(url)};var dataOne = { //这里dataOne假如是 axiosOne原创 2020-05-27 18:00:59 · 4155 阅读 · 3 评论 -
Vue中使用axios post方法传参后台接收不到参数
post请求不像get请求一样,get请求传参是在url后边以&去拼接上的,而post请求时在请求体中的,不会默认去拼接,这就导致。post传递参数失败 ,后台无法获取传递的参数注:一定先import导入之后才能使用var params = { bankName: ”“, bankNameAll: ”“, } axios.post(urls, params).then(res=>{ //这里的params是我向后台传递的参数 //这时候发现后台无法接收到值原创 2020-05-25 16:52:43 · 2028 阅读 · 0 评论 -
Vue中把对象中的数据给了某个变量,改变一个对象的值,另一个对象也变化的解决方案
在vue中的data数据中建立这两个对象var salesOreder = new Vue({ delimiters: ['${', '}'], [想知道这里的作用解释请看这里](https://blog.youkuaiyun.com/qq_46124502/article/details/106326034) data(){ return { objData1:{ name:"zky" },原创 2020-05-25 14:29:41 · 3361 阅读 · 0 评论 -
vue中{{}}与框架冲突
解决方案:delimiters的使用VUE 中delimiters的作用是改变我们插值的符号,Vue默认的插值是双大括号{{}},在一些特殊的情况下我们可能会用到其他的方式绑定插值,例如:再用vue写项目,在后台上次打包上线的时候。vue中的插值符号{{}} 起不了作用,用v-text可以,但是一些需求则必须要用到插值符号.var salesOreder = new Vue({ delimiters: ['${', '}'], el: "#wrap", data() { return {}原创 2020-05-25 09:21:17 · 847 阅读 · 1 评论 -
vue中通过this.refs操作DOM时报undefined
vue中通过this.refs操作DOM时的注意事项在axios请求完成时获取获取绑定的ref 为undefinedvue中this.$nextTick()函数的使用Vue 中的 nextTick 涉及到 Vue 中 DOM 的异步更新Vue 实现响应式并不是数据发生变化之后 DOM 立即变化,而是按一定的策略进行 DOM 的更新$nextTick 是在下次 DOM 更新循环结束之后执行延迟回调,在修改数据之后使用 $nextTick,则可以在回调中获取更新后的DOMaxios({ me原创 2020-05-21 18:01:32 · 1523 阅读 · 0 评论