index函数

vue 实现active点击图片切换

℡╲_俬逩灬. 提交于 2019-12-01 08:28:06
循环条件下: 1.点击函数@click="active(index)" 获取点击的位置 2.讲索引值传给class,点击哪一个则显示哪一个的样式 3.在data添加ins的初始值 4.使用三目运算符切换图片 三木运算符执行方法: 如果index == ins为真,则显示imgItem.active的图片,否则显示imgItem.path的图片 5.书写active方法 6.效果 来源: https://www.cnblogs.com/zzz-knight/p/11673050.html

Django基础九之中间件

与世无争的帅哥 提交于 2019-12-01 04:49:28
Django基础九之中间件 本节目录 一 前戏 二 中间件介绍 三 自定义中间件 四 中间件的执行流程 五 中间件版登陆认证 六 xxx 七 xxx 八 xxx 一 前戏      我们在前面的课程中已经学会了给视图函数加装饰器来判断是用户是否登录,把没有登录的用户请求跳转到登录页面。我们通过给几个特定视图函数加装饰器实现了这个需求。但是以后添加的视图函数可能也需要加上装饰器,这样是不是稍微有点繁琐。   学完今天的内容之后呢,我们就可以用更适宜的方式来实现类似给所有请求都做相同操作的功能了    二 中间件介绍      中间件顾名思义,是介于request与response处理之间的一道处理过程,相对比较轻量级,并且在全局上改变django的输入与输出。因为改变的是全局,所以需要谨慎实用,用不好会影响到性能。   Django的中间件的定义: Middleware is a framework of hooks into Django’s request/response processing. <br>It’s a light, low-level “plugin” system for globally altering Django’s input or output.   如果你想修改请求,例如被传送到view中的 HttpRequest 对象。

07/redux

非 Y 不嫁゛ 提交于 2019-12-01 04:32:33
<pre> 当有如下需要可以考虑使用redux: 当组件的状态,需要共享 某个状态需要在任何地方都可以拿到 一个组件需要改变全局状态 一个组件需要改变另一个组件的状态 vue中是 store(state,mutation,action) |----------------------- | | action --->mutation | |-- ↑------- ↑ | dispatch | | | | | | | | | ↓ | component<-----|-----state | |-------------- | state可以由组件直接获取得到 组件diapatch action 或commit mutation 来实现数据state的修改 react没有vuex那么清晰,在store里定义state(状态),action等 主要定义reducer和action react中reduce相当于mutation,store不需要定义声明,有reducer自动完成 组件通过store.getState()获得状态 组件怎么改状态?通过容器dispatch去改-->也就是store.dispatch(Action) 这个Action相当于重新触发掉了reducer 重新产生State,State一变化就触发组件变化。流向和vuex是一样的 component---

数组相关

强颜欢笑 提交于 2019-11-30 21:46:30
三)数组相关 1)数组的方法: 1.push() 从后面添加元素,返回值为添加完后的数组的长度 let arr = [1,2,3,4,5] console.log(arr.push(5)) // 6 console.log(arr) // [1,2,3,4,5,5] 2.pop() 从后面删除元素,只能是一个,返回值是删除的元素 let arr = [1,2,3,4,5] console.log(arr.pop()) // 5 console.log(arr) //[1,2,3,4] 3.shift() 从前面删除元素,只能删除一个 返回值是删除的元素 let arr = [1,2,3,4,5] console.log(arr.shift()) // 1 console.log(arr) // [2,3,4,5] 4. unshift() 从前面添加元素, 返回值是添加完后的数组的长度 let arr = [1,2,3,4,5] console.log(arr.unshift(2)) // 6 console.log(arr) //[2,1,2,3,4,5] 5. splice(i,n,key) 删除从i(索引值)开始之后的那个元素。返回值是删除的元素。参数为空则表示截取一个空数组,元数组不变。i为整数(0 正数 负数)负数表示从数组的后边往前数,-1表示最后一个

js数组遍历方法总结

随声附和 提交于 2019-11-30 21:13:19
数组遍历方法 1.for循环 使用临时变量,将长度缓存起来,避免重复获取数组长度,当数组较大时优化效果才会比较明显。 1 2 3 for (j = 0,len=arr.length; j < len; j++) { } 2.foreach循环 遍历数组中的每一项,没有返回值,对原数组没有影响,不支持IE 1 2 3 4 5 6 //1 没有返回值 arr.forEach((item,index,array)=>{ //执行代码 }) //参数:value数组中的当前项, index当前项的索引, array原始数组; //数组中有几项,那么传递进去的匿名回调函数就需要执行几次; 3.map循环 有返回值,可以return出来 map的回调函数中支持return返回值;return的是啥,相当于把数组中的这一项变为啥(并不影响原来的数组,只是相当于把原数组克隆一份,把克隆的这一份的数组中的对应项改变了); 1 2 3 4 5 6 7 arr.map( function (value,index,array){    //do something    return XXX }) 1 2 3 4 5 6 var ary = [12,23,24,42,1]; var res = ary.map( function (item,index,ary ) { return item*10; }

Flask系列 路由系统

烂漫一生 提交于 2019-11-30 16:33:42
Flask路由系统细分 from flask import Flask app = Flask(__name__) @app.route('/') def index(): return 'ok' if __name__ == '__main__': app.run() 从这个简单的代码入口,来剖析一下路由 @app.route('/') route():就是一个加在index()上的装饰器 ​```python def route(self, rule, **options): # rule:匹配规则,options参数字典 def decorator(f): endpoint = options.pop("endpoint", None) # 如果option中有endpoint就取出,否则endpoint=None self.add_url_rule(rule, endpoint, f, **options) # f就是装饰器装饰的视图函数 index return f return decorator 获取的信息: (1)route传参时可以指定 endpoint = '别名' ,endpoint是给这个路由取的别名,用作反向解析,稍后再会介绍。没有传时为None。 (2)主要是执行了add_url_rule方法将匹配规定与视图函数的对应关系添加到路由中 add_url

Django-中间件

大兔子大兔子 提交于 2019-11-30 16:02:57
自定义中间件 中间件可以定义五个方法,分别是:(主要的是process_request和process_response) process_request(self,request) process_view(self, request, view_func, view_args, view_kwargs) process_template_response(self,request,response) process_exception(self, request, exception) process_response(self, request, response) 以上方法的返回值可以是None或一个HttpResponse对象,如果是None,则继续按照django定义的规则向后继续执行,如果是HttpResponse对象,则直接将该对象返回给用户。 自定义一个中间件示例 from django.utils.deprecation import MiddlewareMixin class MD1(MiddlewareMixin): def process_request(self, request): print("MD1里面的 process_request") def process_response(self, request, response): print(

Flask(一)

生来就可爱ヽ(ⅴ<●) 提交于 2019-11-30 15:18:59
Flask 0.Flask简介 Flask是一个基于Python开发并且依赖jinja2模板和Werkzeug WSGI服务的一个微型框架,对于Werkzeug本质是Socket服务端,其用于接收http请求并对请求进行预处理,然后触发Flask框架,开发人员基于Flask框架提供的功能对请求进行相应的处理,并返回给用户,如果要返回给用户复杂的内容时,需要借助jinja2模板来实现对模板的处理,即:将模板和数据进行渲染,将渲染后的字符串返回给用户浏览器。 “微”(micro) 并不表示你需要把整个 Web 应用塞进单个 Python 文件(虽然确实可以 ),也不意味着 Flask 在功能上有所欠缺。微框架中的“微”意味着 Flask 旨在保持核心简单而易于扩展。Flask 不会替你做出太多决策——比如使用何种数据库。而那些 Flask 所选择的——比如使用何种模板引擎——则很容易替换。除此之外的一切都由可由你掌握。如此,Flask 可以与您珠联璧合。 默认情况下,Flask 不包含数据库抽象层、表单验证,或是其它任何已有多种库可以胜任的功能。然而,Flask 支持用扩展来给应用添加这些功能,如同是 Flask 本身实现的一样。众多的扩展提供了数据库集成、表单验证、上传处理、各种各样的开放认证技术等功能。Flask 也许是“微小”的,但它已准备好在需求繁杂的生产环境中投入使用

递归函数的使用

房东的猫 提交于 2019-11-30 13:35:53
一,概念 直接或间接地调用自身的算法称为 递归算法 。 用函数自身给出定义的函数称为 递归函数 。 二,实例 实例1 : 阶乘函数 。 通过分析可知,要求一个数的阶乘,只要知道它前一位数的阶乘便可求出。 即: n!=n*(n-1)! 而要求前一位数的阶乘,只要知道它前前一位数的阶乘即可,即 :(n-1)!=(n-1)*(n-2)!, 因为每次 计算的方式都相同,所以考虑用递归的方式求解。 递归关系:f(n)=n*f(n-1) 递归结束条件:n=1 (因为我们很容易知道1阶乘是1,因此求解其他数的阶乘时,可从1的阶乘开始求起) 代码实现 : 1 import java.util.*; 2 public class HW8 { 3 public static void main(String[] args) { 4 Scanner in=new Scanner(System.in); 5 System.out.println("请输入所要求的数值:"); 6 int n=in.nextInt(); //输入所要遍历的数 7 int number=funtion(n); 8 System.out.println(n+"的阶乘为:"+number); 9 10 } 11 12 /** 13 * 求第n个数的阶乘!!! 14 * @param n 所要求的数的值 15 * @return

Django-URL路由系统

我的梦境 提交于 2019-11-30 13:19:27
目录 1.URL配置 1.1基本格式   1.2参数说明  2.正则表达式详解 2.1基本配置 2.2注意事项 2.3补充说明 3.分组命名匹配 3.1URLconf 使用命名组: 3.2URLconf匹配的位置 3.3捕获的参数永远都是字符串 3.4视图函数中指定默认值 3.5include其他的URLconfs(也叫URL分发) 4.传递额外的参数给视图函数(了解) 5.命名URL(别名)和URL的反向解析 6.命名空间模式 1.URL配置 Django 1.11版本 URLConf官方文档    URL配置(URLconf)就像Django 所支撑网站的目录。它的本质是URL与要为该URL调用的视图函数之间的映射表。你就是以这种方式告诉Django,对于这个URL调用这段代码,对于那个URL调用那段代码。 1.1基本格式   from django.conf.urls import url #循环urlpatterns,找到对应的函数执行,匹配上一个路径就找到对应的函数执行,就不再往下循环了,并给函数传一个参数request,和wsgiref的environ类似,就是请求信息的所有内容 urlpatterns = [ url(正则表达式, views视图函数,参数,别名), ] 注意: Django 2.0版本中的路由系统已经替换成下面的写法,但是django2