Vue实战中常见问题解决方案积累(一)

商城类vue2.0项目实战经验积累 商城类vue项目实战经验积累一、项目搭建相关二、项目成功搭建后的基础配置1、打包后可正常访问项目的基础配置2、如何去掉url中#3、添加路由守卫4、路由component引用的es6简化5、vuex状态管理6、第三方插件axios的引用及封装7、本地请求接口时的跨域配置功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格... 阅读详情

1. v-on 监听原生事件 (变更)

现在在组件上使用 v-on 只会监听自定义事件 (组件用 $emit 触发的事件)。如果要监听根元素的原生事件,可以使用 .native 修饰符,比如:

<my-component v-on:click.native="doSomething"></my-component>
 <router-link class="sidebar-link" to="/guide/Basics_plugins" @click.native="toggleNav">插件和预设</router-link>

 

2.Vue和Jquery混合开发中绑定事件不生效的问题

如下图的方式绑定事件是不会生效的:

 export default {
        created: function () {
            $('#navBar .grid-content').click(function () {
                $('#navBar a').removeClass('on');
                $(this).find('a').addClass('on');
            })
        }
    }

原因是:vue是通过virtual DOM(虚拟DOM)渲染的页面,created只是编译完成阶段,而jQuery绑定事件必须在DOM加载完成之后才能绑定,所以确定DOM已经渲染完成的方法有以下:

1 .   $(function(){ ...  })

export default {
        created: function () {
            $(function () {
                $('#navBar .grid-content').click(function () {
                    $('#navBar a').removeClass('on');
                    $(this).find('a').addClass('on');
                })
            })
        }
    }

    2. mounted:

注意 mounted 不会承诺所有的子组件也都一起被挂载。如果你希望等到整个视图都渲染完毕,可以用 vm.$nextTick 替换掉 mounted:

 export default {
        mounted: function () {
            $('#navBar .grid-content').click(function () {
                $('#navBar a').removeClass('on');
                $(this).find('a').addClass('on');
            })
        }
    }

  3.  vm.$nextTick(function(){  .... })  :推荐方式

export default {
        mounted: function () {
            this.$nextTick(function () {
                $('#navBar .grid-content').click(function () {
                    $('#navBar a').removeClass('on');
                    $(this).find('a').addClass('on');
                })
            })
        },
}

 

相关推荐

deap数据集的情绪检测代码环境搭建与实现

deap数据数据集很大

f的博客 4157

jQuery中addClass不起作用

1、当用jQuery给其中的i追加样式时 $(this).addClass('active').siblings().removeClass('active'); .active的中和cont重复的样式不起作用 <div class="imgId"> <i class="cont">1</i> <i ...

weixin_30662539的博客 1020

PADS VX2.7学习记录05-PADS Layout设计文件Gerber等输出整理

在“PDF Document”栏中,依次选中除REF-TOP和REF-BOT之外的文件,单击图标,将其余PDF Document文件进行删除,如图所示。然后单击【生成PDF】按钮,即可创建一份PDF格式的位号图。

tianpu2320959696的博客 1024

解决addClass不起作用的小妙招

今天遇到了这么一个问题,同样的写法,实在是找不出来为什么其中一个标签的addClass无法实现; 最后发现了这么一个方法,这才是最重要的 当点击事件后,获取到this然后给他添加class; 起初是用的$(this)我也打印了,可以正确获取到标签无误,但addClass就是无法实现; 后来改用了$("span",$(this)) 注:this这个标签即是span...

huakaiwuxing的博客 7065

(Cascade extended state observer)级联ADRC的simulink仿真和程序---送给中国研究学者的精华版

(Cascade extended state observer)级联ADRC的simulink仿真和程序---送给中国研究学者的精华版

weixin_44312889的博客 3778

博途AI助手演示,完成简单且重复的梯形图代码,并导入到博途

自写个博途AI助手,下面演示AI帮我生成完善多个模拟量输入转换的代码,

gsjkwg的博客 1525

vue项目拆坑

created(){ //添加class样式后,不能起作用 }, // 最早操作dom元素的时机在mounted钩子函数中 动态添加的表格行,样式无法正常显示 解决: 去掉

fly_miqiqi的博客 348

3D打印开源硬件MKS Monster8 V2.0 原理图赏析--更新中

MKS MONSTER8 主板是创客基地为满足市场需求而推出的主板,可用于Voron 2.4机器安装,支Marlin 固件和Klipper固件,支持U盘打印(暂时只有Marlin固件支持),支持TMC驱动UART模式,它包含了3D打印机所需要的主要部件和接口,通过MCU集中控制,是一款功能强大的主板。下面详细分析一下。

我的专栏 7222

Vue 动态添加class可能带来的问题(被覆盖)

Vue 动态添加class可能带来的问题(被覆盖)

weixin_45143856的博客 2806

PMP第一章:引论介绍

PMP第一章:引论介绍 1.PMBOK指南概述和目的 项目管理标准 通用词汇 道德与专业行为规范 2.基本要素 项目 项目管理的重要性 项目、项目集、项目组合以及运营管理之间的关系 指南的组成部分 裁剪 项目管理商业文件 3.项目管理标准 标准是基于权威、惯例或共识而建立并用作模式或范例的文件。 标准确认了在大多数时候都被大多数项目视作良好实践的过程。 4.道德与专业行为规范 责任:对自己所做的决策或未做决策、所采取的行为或未采取行为,以及相应的后果,承担责任 尊重:对自己、他人和委托给自己的资源

zhengzaifeidelushang的博客 826

【2025国赛A题】A题烟幕干扰弹的投放策略思路+代码+论文

【2025国赛A题】A题烟幕干扰弹的投放策略思路+代码+论文

订阅付费专栏Matlab(奶茶价版),可赠送奶茶价版付费专栏指定代码1份; 866

解决vue项目在ie9上不兼容document.body.classList.add的问题

解决vue项目在ie9上不兼容document.body.classList.add的问题 1,安装 npm install classlist-polyfill 2,修改/build/webpack.base.conf.js文件 module.exports = { context: path.resolve(__dirname, ‘…/’), entry: { app: [‘classlist-polyfill’, ‘babel-polyfill’, ‘./src/main.js’] // ‘./src

weixin_42047653的博客 1184

华为OD机试真题 新系统 9月27号 【数据中心最佳维护窗口】

华为OD机试真题 新系统【数据中心最佳维护窗口】,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,以及在线OJ模拟做题。华为OD机试真题 【数据中心最佳维护窗口】多语言题解。

qq_45776114的博客 1154

探索Vue.js的无限可能 —— vuejs-challenges

挑战自我,共同成长,Vue.js挑战等你来战!

2401_83063795的博客 2841

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

终极Vue.js挑战平台:从零到一的实战进阶指南

你是否曾经在学习Vue.js时感到困惑?面对响应式系统、组合式API、自定义指令等概念,是否觉得理论与实践之间存在差距?vuejs-challenges项目正是为了解决这一痛点而生,它通过精心设计的编程挑战,让你在解决实际问题中真正掌握Vue.js的精髓。 [![Vue.js挑战项目界面](https://raw.gitcode.com/gh_mirrors/vu/vuejs-challenge

gitblog_00545的博客 962

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Apache DataFusion 27.0.0 版本发布解析:窗口函数扩展、外部表写入与核心模块重构

> 本文基于仓库内 [dev/changelog/27.0.0.md](https://link.gitcode.com/i/e1a0788292a5fde7f0c0879d4875cd98) 发布说明,结合当前仓库源码与示例,系统梳理 Apache DataFusion 27.0.0(2023-06-26 发布)的核心变更:破坏性改动、新功能、性能优化与 Bug 修复。读完本文,你将掌握 27.

gitblog_00528的博客 962

Vue问题积累

delete是将数组对应下标设置为empty或者undefined,并不会改变数组长度和触发响应式更新,Vue.delete是将对应下标的数据彻底删除,数组长度会改变并且会触发响应式更新。

qq_43565396的博客 1463

【Vue3项目实战系列一】—— 从零开始一个vue3项目 vue3+javascript+vite 非常详细 手把手教学

从零开始一个vue3项目,技术选型:vue3+javascript+vite

Sherry Tian的博客 2811

vue项目经验积累

vue功能:数组、对象深拷贝 // 数组深拷贝 var array=[1,2,453,12,432] var newArray=JSON.parse(JSON.stringify(vs)) newArray.push(0) console.log(array) //此时array值不会变化,两个值是独立存在的 ********************************************************************* // 对象深拷贝 let origin = { na

无知者无畏 2470

vue一课一得

官方文档:在线教程和课程:实战项目:编码挑战和练习:阅读和分析源码:社区参与:书籍:博客和文章:构建个人项目:学习相关技术:定期复习和总结:设置学习目标:使用学习工具:实践驱动学习:保持好奇心和持续学习:基础语法和概念:响应式数据绑定:组件化开发:单文件组件(Single File Components):路由管理:状态管理:表单处理和验证:与后端交互:前端工程化:单元测试和端到端测试:性能优化:调试和问题解决:最佳实践和模式:响应式和适配性设计:部署和维护:前端开发技能提升:项目构建经验:代码组织能力:响

m0_65914420的博客 925

vue项目小积累

做了个vue小项目,项目问题积累,便于本人查阅。 vue项目的配置 // vue.config.js // 在线配置文档: https://cli.vuejs.org/zh/config/#parallel module.exports = { // 选项... publicPath: './', // 相对路径,如果css里面的资源链接、ajax请求链接也是...

jdk137的专栏 399

Vue.js前端框架技术一课一得

Vue.js前端框架技术的学习之路虽然充满挑战,但正是这些挑战让我不断成长和进步。通过系统学习、实战项目和团队协作等方式,我不仅掌握了Vue.js的核心技术和实战技巧,还提高了自己的开发效率、问题解决能力和团队协作能力。我相信,在未来的前端开发之路上,Vue.js将继续为我提供强大的支持和帮助。同时,我也将不断学习和探索新的技术和工具,以不断提升自己的技术水平和竞争力。愿与各位同仁携手共进,共同创造更加美好的未来!

l1294568的博客 1056

Javascript之VueJS视频教程-陈潇冰-专题视频课程

JavaScript框架Vue.js系列课程:从Vue1.0讲到Vue2.0,从理论讲到实战,理论与案例巧妙结合,让课程更容易理解!内容涵盖Vue 1.0版本到Vue 2.0版本,该视频教程共分为十一个章节,涵盖VueJS所有知识点,包括vue基础入门、常用指令、bootstrap+vue,属性、事件、模板案例、计算属性、自定义过滤器、自定义指令、键盘事件、数据监听、组件、数据传递、同步更新,lo...

qq_36351498的博客 718

vue框架知识积累

1.在实际项目中,经常会用到多种模板结合在一起使用,比如thinkphp,artemplate,vue模块,很多模板都会使用这种“{{}}“转义符号去解析,在vue中为了避免这种冲突,可以使用如下接口    Vue.config.delimiters: 默认值为:['{{', '}}']; 2.使用vue.directive写指令前要实例化vue对象(真奇葩,我居然会不懂这个道理,js都

不破小子 4515

前端面试积累-1

@[TOC]前端面试 [写在前面] 优秀的前端面试经验-1 VUE实现原理 MVVM原理 基础概念–Object.defineProperty() 1-1 首先vue采取的是mvvm,与mvc不同的是采取数据双向绑定。同时注意vue是不兼容低版本的,为什么不兼容,就要谈到Object.defineProperty() 1-2 如何实现双向数据绑定—采取数据劫持与发布订阅模式 1-3 平常...

weixin_44510782的博客 204

详细的vue学习路线

以下是一个,适合你逐步掌握 Vue.js 的各项技能。路线包含知识点拆解、学习顺序、推荐时间分配、以及实战建议。

Zero_pl的博客 1932
上一篇: vue中通过ajax获取数据时,如何避免绑定的数据中出现property of undefined 或者 cannot read property *** of null 错误
下一篇: JSON Web Token
大叔0o0
博客等级 码龄10年 31粉丝 52原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值