element

element 输入框input不能正常输入,输入了也不能删除的问题,

亡梦爱人 提交于 2020-08-05 09:39:01
加入这个, @input =" change ( $event ) " <el-input type ="text" v-model =" addformData . xx" @input =" change ( $event ) " placeholder =" 分类名称 " ></el-input> methods : { change (){ this . $forceUpdate () ; } , } 来源: oschina 链接: https://my.oschina.net/u/4236225/blog/4331354

python3之Splash

半世苍凉 提交于 2020-08-05 09:13:22
Splash是一个javascript渲染服务。它是一个带有HTTP API的轻量级Web浏览器,使用Twisted和QT5在Python 3中实现。QT反应器用于使服务完全异步,允许通过QT主循环利用webkit并发。 一些Splash功能: 并行处理多个网页 获取HTML源代码或截取屏幕截图 关闭图像或使用Adblock Plus规则使渲染更快 在页面上下文中执行自定义JavaScript 可通过Lua脚本来控制页面的渲染过程 在Splash-Jupyter 笔记本中开发Splash Lua脚本。 以HAR格式获取详细的渲染信息 1、Scrapy-Splash的安装 Scrapy-Splash的安装分为两部分,一个是Splash服务的安装,具体通过Docker来安装服务,运行服务会启动一个Splash服务,通过它的接口来实现JavaScript页面的加载;另外一个是Scrapy-Splash的Python库的安装,安装后就可在Scrapy中使用Splash服务了,下面我们分三部份来安装: (1)安装Docker # 安装所需要的包: yum install -y yum-utils device-mapper-persistent- data lvm2 # 设置稳定存储库: yum-config-manager --add-repo https://download

C#.NET大文件分片上传/多线程上传

老子叫甜甜 提交于 2020-08-05 07:59:21
以ASP.NET Core WebAPI 作后端 API ,用 Vue 构建前端页面,用 Axios 从前端访问后端 API ,包括文件的上传和下载。 准备文件上传的API #region 文件上传 可以带参数 [HttpPost("upload")] public JsonResult uploadProject(IFormFile file, string userId) { if (file != null) { var fileDir = "D:\\aaa"; if (!Directory.Exists(fileDir)) { Directory.CreateDirectory(fileDir); } //文件名称 string projectFileName = file.FileName; //上传的文件的路径 string filePath = fileDir + $@"\{projectFileName}"; using (FileStream fs = System.IO.File.Create(filePath)) { file.CopyTo(fs); fs.Flush(); } return Json("ok"); }else{ return Json("no"); } } #endregion 前端vue上传组件 ( 利用Form表单上传 )

基于vuejs和element-ui的表单验证——循环表单和循环表格验证

佐手、 提交于 2020-08-05 06:26:01
基于vuejs和element-ui的验证:循环表单验证、循环表格表单验证 代码: <!-- * @lastEditors: lingyang * @Date: 2019-12-16 15:31:22 * @LastEditTime: 2020-07-09 17:26:04 --> <template> <div class="hello"> <h1>{{ msg }}</h1> <!-- <h1>commonUseComponents/src/pages/page2/App.vue</h1> --> <h2>循环表单校验</h2> <el-form :model="dynamicValidateForm" :rules="rules" ref="dynamicValidateForm" label-width="100px" class="demo-dynamic"> <el-form- item prop ="email" label ="邮箱" > <el-input v-model="dynamicValidateForm.email"></el-input> </el-form-item> <el-form- item v - for ="(domain, index) in dynamicValidateForm.domains" :label ="domain

是否有CSS父选择器?

安稳与你 提交于 2020-08-05 04:55:35
问题: How do I select the <li> element that is a direct parent of the anchor element? 如何选择作为锚元素直接父元素的 <li> 元素? As an example, my CSS would be something like this: 例如,我的CSS将是这样的: li < a.active { property: value; } Obviously there are ways of doing this with JavaScript, but I'm hoping that there is some sort of workaround that exists native to CSS Level 2. 显然,可以使用JavaScript进行此操作,但是我希望CSS Level 2本身具有某种解决方法。 The menu that I am trying to style is being spewed out by a CMS, so I can't move the active element to the <li> element... (unless I theme the menu creation module which I'd rather not do).

改造 layui 表格组件实现多重排序

拈花ヽ惹草 提交于 2020-08-05 04:46:34
  layui 的表格组件目前只支持单列排序,在实际应用中并不能很好的支撑我们的业务需求。今天一时手痒,决定改造一番以支持多重排序。   实现思路也比较简单,只需要用一个数组来存放所有排序的列,再把这个数组传到后端(后端排序)进行排序即可。沿用一般的使用习惯,按住 shift 键点击表头可增加排序列,按住 ctrl 键点击表头可减少排序列。话不多说,先上最终效果图:    1. 定义排序列数组    我当前用的是 2.5.6 版本,源码之前为适应业务需求也做过相应修改,所以下文说到的行数只是个大概数。   为兼容之前单列排序的使用习惯,我们增加一个 multiSort 的配置属性,默认为 false,为 true 时才开启多列排序。修改源码大概第 235 行,增加两个属性 multiSort、sortCols。 //构造器 , Class = function (options) { var that = this; that.index = ++table.index; that.mutlSort = false; that.sortCols = []; // 组合排序列集合 that.config = $.extend({}, that.config, table.config, options); that.render(); };   2. 修改表头点击事件  

Python+Selenium练习篇之6-清除文本方法/刷新当前页面/浏览器上前进和后退操作

痞子三分冷 提交于 2020-08-05 03:02:12
今天教大家用send_keys()来输入字符串到文本输入框这样的页面元素,用click()来点击页面上支持点击的元素。有时候,我们需要清除一个文本输入框内的文字,然后重新输入新的字符串,那边清除这个方法如何实现呢。 调用webdriever中clear()方法: 相关代码如下,为了演示测试效果,我们运行完脚本,不关闭浏览器: # coding=utf-8 from selenium import webdriver driver = webdriver.Chrome() driver.maximize_window() driver.implicitly_wait( 6 ) driver.get( " https://www.baidu.com " ) driver.find_element_by_id( " kw " ).send_keys( " Selenium " ) try : driver.find_element_by_id( " kw " ).clear() # 调用clear()方法去清除 print ( ' test pass: clean successful ' ) except Exception as e: print ( " Exception found " , format(e)) webdriver中刷新页面的方法。 相关脚本代码如下: #

C++17结构化绑定

Deadly 提交于 2020-08-05 01:46:38
C++17结构化绑定 动机 std::map的insert方法返回std::pair,两个元素分别是指向所插入键值对的迭代器与指示是否新插入元素的布尔值,而std::map::iterator解引用又得到键值对std::pair。在一个涉及std::map的算法中,有可能出现大量的first和second,让人不知所措。 include include int main() { typedef std::map<int, int> Map; Map map; std::pair<Map::iterator, bool> result = map.insert(Map::value_type(1, 2)); if (result.second) std::cout << "inserted successfully" << std::endl; for (Map::iterator iter = map.begin(); iter != map.end(); ++iter) std::cout << "[" << iter->first << ", " << iter->second << "]" << std::endl; } C++11标准库添加了std::tie,用若干引用构造出一个std::tuple,对它赋以std::tuple对象可以给其中的引用一一赋值(二元std:

Bean后置处理器

拥有回忆 提交于 2020-08-05 01:07:11
创建完对象之后, 接下来, 就应该想办法对属性进行注入了, 其中就包括 @Autowired 注入 但是在注入之前, 貌似 还没有对 @Autowired 进行扫描和解析. 代码块: if (instanceWrapper == null ) { /** * 创建 bean 实例,并将实例包裹在 BeanWrapper 实现类对象中返回。 * createBeanInstance中包含三种创建 bean 实例的方式: * 1. 通过工厂方法创建 bean 实例 * 2. 通过构造方法自动注入(autowire by constructor)的方式创建 bean 实例 * 3. 通过无参构造方法方法创建 bean 实例 * * 若 bean 的配置信息中配置了 lookup-method 和 replace-method,则会使用 CGLIB 增强 bean 实例。 */ instanceWrapper = createBeanInstance(beanName, mbd, args); } final Object bean = instanceWrapper.getWrappedInstance(); Class <?> beanType = instanceWrapper.getWrappedClass(); if (beanType != NullBean. class )

Flink统计当日的UV、PV

邮差的信 提交于 2020-08-05 00:27:56
  Flink 统计当日的UV、PV   测试环境:     flink 1.7.2   1、数据流程          a.模拟数据生成,发送到kafka(json 格式)       b.flink 读取数据,count     c. 输出数据到kafka(为了方便查看,输出了一份到控制台)   2、模拟数据生成器     数据格式如下 : {"id" : 1, "createTime" : "2019-05-24 10:36:43.707"}     id 为数据生成的序号(累加),时间为数据时间(默认为数据生成时间)   模拟数据生成器代码如下:    /** * test data maker */ object CurrentDayMaker { var minute : Int = 1 val calendar: Calendar = Calendar.getInstance() /** * 一天时间比较长,不方便观察,将时间改为当前时间, * 每次累加10分钟,这样一天只需要144次循环,也就是144秒 * @return */ def getCreateTime(): String = { // minute = minute + 1 calendar.add(Calendar.MINUTE, 10 ) sdf.format(calendar.getTime) }