Flowering_Vivian
码龄5年
关注
提问 私信
  • 博客:33,337
    问答:1,591
    34,928
    总访问量
  • 22
    原创
  • 1,265,743
    排名
  • 7
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:北京市
  • 目前就职: 深思数盾科技股份有限公司
  • 加入CSDN时间: 2020-05-19
博客简介:

Flowering_Vivian的博客

查看详细资料
个人成就
  • 获得25次点赞
  • 内容获得4次评论
  • 获得89次收藏
  • 代码片获得233次分享
创作历程
  • 22篇
    2020年
成就勋章
TA的专栏
  • 前端技术教程
    6篇
  • 前端项目常见问题总结
    16篇
兴趣领域 设置
  • 前端
    javascriptcssvue.jsreact.jses6webpack前端框架
  • 后端
    node.js
  • 移动开发
    flutter
  • 微软技术
    typescript
  • 学习和成长
    面试
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

174人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

select做一个下拉框,然后怎么传出选择的数据呀?

答:

$('#select的id名').val();

回答问题 2021.02.05

网页中点击元素时弹出对应的元素,再点时则关闭,来个看看问题错在哪,给改改

答:

你html部分的id是固定的,没看出来是变化的啊。

其实没有必要加id,直接用class就能解决了,给p标签外面套个div,直接给input加click事件,用siblings()方法控制它的兄弟元素,这样循环多个就没有问题,不会影响到其他的。

<% for i=1 to 5 %>
<div class="list">
    <p  class="input_name">点第<%= i %>个弹出下面对应的第<%= i %>个</p>

    <!--下面的P标签默认隐藏-->
    <p  class="user_link"><a href='javascript:void(0);'>第<%= i %></a>个</p>
</div>
<% next %>
$(function(){
    $('.input_name').click(function(){
        $(this).siblings('.user_link').slideToggle();
    })
})

 

回答问题 2021.02.05

element-ui表格table实现分页后保留之前checkbox选中数据

element-ui 的table表格可以轻松实现多选的功能,只要在表格列中增加type="selection"的一列即可。但是大部分情况下,表格的数据是有分页的,分页一般是要请求后台接口,这样上一页也就是上一次请求的数据的选中状态就没有了。element-ui提供了reserve-selection,可以保存数据更新前选中的值,这个属性还需要指定row-key。<template> <div> <el-table ref="userTable" :data=
原创
发布博客 2020.12.01 ·
2655 阅读 ·
7 点赞 ·
3 评论 ·
15 收藏

display:flex布局下white-space:nowrap失效问题解决

文字长度过长显示省略号的样式设置方法众所周知:h3 { white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}然而有一次,我在项目中用到white-space: nowrap的时候,发现它失效了,我的项目是flex布局,宽度自适应的部分,white-space: nowrap撑开了内容区的长度,省略号是显示了,但是父元素的自适应宽度完全不对了。页面部分布局如下:<template> <
原创
发布博客 2020.11.30 ·
3962 阅读 ·
4 点赞 ·
0 评论 ·
7 收藏

vue-i18n + element-ui实现国际化教程(中英文切换)

Vue+Element-ui实现国际化教程
原创
发布博客 2020.11.10 ·
2351 阅读 ·
1 点赞 ·
0 评论 ·
3 收藏

vue父子组件通信(父组件向子组件传递参数,子组件监听参数变化调用对应方法)

子组件监听父组件传递参数变化
原创
发布博客 2020.10.30 ·
1801 阅读 ·
1 点赞 ·
0 评论 ·
4 收藏

html导航栏和其他内容冲突应该怎么解决呢?

答:

导航栏应该是绝对定位的吧,css样式部分加个z-index就好了,z-index值设置的大于下面的banner部分的z-index,让层级高于下面的banner图部分,就OK了

回答问题 2020.10.22

Vuex实现数据存取教程(跨组件监听vuex数据变化)

Vuex实现数据存取demo
原创
发布博客 2020.10.16 ·
1703 阅读 ·
0 点赞 ·
0 评论 ·
9 收藏

ES6常用方法总结:数组去重、遍历数组(map、filter、forEach区别)、some和every区别

记录一下自己在vue项目中使用es6的常用方法:删除数组元素let arr = ['a', 'b', 'c']// 删除'c'arr = arr.filter(i => { return i != 'c'})$set有些情况下,仅仅通过“=”号来赋值,无法触发数据的实时更新,这个时候用$set就可以。this.$set(obj, 'name', value); //三个参数分别为对象、参数名、参数值对象赋值不改变原对象const newObj = Object.ass
原创
发布博客 2020.10.14 ·
2372 阅读 ·
0 点赞 ·
0 评论 ·
12 收藏

vue 怎么持久化存储?

答:

你token之后为空的原因是因为你路由跳转之后,url的token没有了,但是这个时候其实你的token存储操作还是执行了,所以存成了undefined
我的网页有跟你一样的需求,我是这样实现的,加在了main.js中:
判断一下,如果url中不包含token就不执行token存储操作了。

router.beforeEach((to, from, next) => {
        if (to.query.token) {
            sessionStorage.setItem('token', to.query.token);
            next();
        } else {
            next();
        };
})
回答问题 2020.09.30

Vue+Element-UI怎么在验证用户名的时候判断用户名是否存在?

答:

你的usernameRules方法结果应该是return true或者return false,
这样你自定义校验方法的if判断的结果才会是true或者false,
你现在的usernameRules方法存在用户名的时候直接弹出提示,那么if判断的结果就不对了,所以报错了。
而且里面的validate也可以去掉了,应该会造成死循环
改成下面这样试试:

usernameRules(){
        if (registerForm.username) {
                const {data:res} = await this.$http.post("usernamerules?username=" + this.registerForm.username);//访问后台
                if( res.flag == "success") {
                        return true;
                } else {
                        return false;
                };
            }
    },

其实我觉得比较好的方法是你把username的4个rule都合并到一起,比如下面这样:

registerRules: {
        //校验用户名
        username:[
                { validator: checkUsername, trigger: 'blur' },
        ],
},

然后checkUsername方法如下:

var checkUsername = (rule, value, callback) => {
        let reg = /^[\u4e00-\u9fa5_a-zA-Z0-9.·-]+$/;
        if (!value) {
            callback(new Error('用户名为必填项'));
        } else if (value.length < 5 || value.length > 12) {
            callback(new Error('长度在 5 到 12 个字符'));
        } else if (!reg.test(value)) {
            callback(new Error('姓名不支持特殊字符'));
        } else if (this.usernameRules()) {
                callback(new Error('用户名已存在'));              
        } else {
                callback();
        }
};

这样usernameRules方法里面也不用加判断了

usernameRules(){
        const {data:res} = await this.$http.post("usernamerules?username=" + this.registerForm.username);//访问后台
        if( res.flag == "success") {
            return true;
        } else {
            return false;
        };
},
回答问题 2020.09.30

获取iframe的高 获取不到(jq $(this).contents()也获取不到)

答:

如果你是想实现iframe高度自适应的话,那么我也遇到过同样的问题,
我也在网上找了很多获取iframe高度的方法,都没用,最后发现可以用postMessage来实现。
就是iframe子页面获取到自己的高度,然后通过postMessage把高度值传递给父页面,父页面拿到高度值以后动态赋值给iframe就好了。
我写了一篇博客,内附有详细代码,你可以看下。
博客链接:
https://blog.csdn.net/Flowering_Vivian/article/details/108735643

回答问题 2020.09.29

element-ui常见问题总结(表单校验、表格checkbox自动取消选中等)

在vue中使用element-ui过程中遇到的问题总结将element-ui的默认语言设置为英文1.main.jsimport Vue from 'vue'import ElementUI from 'element-ui'import locale from 'element-ui/lib/locale/lang/en'Vue.use(ElementUI, { locale })2.webpack.dev.conf.js 和 webpack.prod.conf.js 在plugins增加
原创
发布博客 2020.09.24 ·
2980 阅读 ·
3 点赞 ·
0 评论 ·
6 收藏

jqGrid常见问题、常用方法总结

最近项目中用jqGrid来实现页面中的表格数据,使用过程中感触颇多,总体发现jqGrid灵活性还是很好的,我使用过程中参考了API文档,感觉这个API文档挺全面的,文档地址为:jqGrid实例中文版1.jqGrid获取数据信息1-1 获取分页信息获取返回的当前页,每页数,总页数,返回的总记录数的代码如下:var re_records = $("#gridTable").getGridParam('records'); //获取返回的记录数 var re_page = $("#gridTabl
原创
发布博客 2020.09.24 ·
911 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

谷歌浏览器开发者工具的使用详解

一、基础功能篇1. elements在elements中主要分为两大块:A:HTML结构面板B:操作dom样式、结构、事件的显示面板(1)点击箭头选中一个元素,可以在HTML面板中定位到该元素,并且可以在右侧styles面板中查看和编辑该元素的样式,编辑时,效果可以实时更新,这对于前端工程师解决样式问题是个大大的福利,在HTML面板中ctrl+F,可以对html中的内容进行搜索。(2)在右侧Computed面板中,可以查看对应元素的盒图和该元素上最终生效的样式(包含继承父级元素的样式和自己的样
原创
发布博客 2020.09.24 ·
4004 阅读 ·
5 点赞 ·
0 评论 ·
23 收藏

基于jQuery.i18n.properties 实现前端页面的国际化

1.html部分目前html中统计结果有6种类型: html, text, title, alt, placeholder, value, 以及这6种的组合,详情请查看附件i18n-demo,请按照以下格式对标签进行修改:<!--html--><div class="i18n" data-properties="htmlmsg" data-ptype="html"></div><!--text--><div class="i18n" data
原创
发布博客 2020.09.24 ·
438 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

HTML5 fileReader对象实现图片上传(支持一次上传多张图片),并用canvas进行前端压缩

首先页面布局的代码是这样的将type="file"的input绝对定位到上传图片的图标上,并且将opacity设置为0,即可实现样式效果。multiple代表可支持一次上传多张图片accept=“image/*” :代表会打开图库或者照相机但是在Chrome和Safari等Webkit浏览器下却出现了响应滞慢的问题,可能要等 6~10s 才能弹出文件选择对话框,简直不能忍呀。在IE和Firefox中则没有发现响应延迟的问题解决办法:accept=“image/gif,image/jpeg,ima
原创
发布博客 2020.09.24 ·
805 阅读 ·
1 点赞 ·
0 评论 ·
2 收藏

IE6/7兼容性问题总结

IE兼容问题1.JavaScript日期转化为时间戳出现NaN错误原始字符串 2016-10-11var date = new Date(“2016-10-11”) 在IE下date是NaN,而其他浏览器正常。字符串修改成 2016/10/11var date = new Date(“2016/10/11”) 就正常了IE6/7兼容性问题1.z-index兼容性问题问题描述:假如页面中A和B是兄弟元素,C是A的子元素,D是B的子元素,当我给C和D都设置了绝对定位(position:absol
原创
发布博客 2020.09.23 ·
245 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Bootstrap弹出层model上嵌套的弹出层中input输入框无法输入问题解决方案

做项目过程中,在model弹出层上面又自定义了一个弹出层,自定义弹出层上面有input输入框,但是却获取不了焦点,无法输入。原因:Bootstrap框架目前只支持一层model层,即当前model层上无法再用model弹出层。解决方案:将Bootstrap弹出层最外层div的 tabindex属性去掉即可(如下面的代码示例,将tabindex这个属性去掉,不要改变其属性值,改变属性值是没用的)<div class="modal fade" id="template-modal" tabindex
原创
发布博客 2020.09.23 ·
1001 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

HTML、CSS常用方法总结(谷歌浏览器记住密码自动填充无法去掉、文字截断在火狐浏览器不生效等)

1.去掉谷歌浏览器input记住账号或密码时默认出现的黄色背景直接用css的内阴影来覆盖黄色input:-webkit-autofill { -webkit-box-shadow: 0 0 0px 1000px white inset; } 2.table表格固定列宽table{ table-layout:fixed;}3.文字截断在火狐浏览器不生效word-break: break-all;在火狐浏览器不生效,原因是加在了span(行内元素)标签上不生效,加在di
原创
发布博客 2020.09.23 ·
508 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多