sudo xcode-select -s /Library/Developer/CommandLineTools
Untitled
title: ios-文件下载与分享
urlname: ios-file-download-and-share
date: 2017-12-22 09:50
updated: 2017-12-22 09:50
tags:
- ios
1 | -(void)download { |
css-bootstrap table-stripe reverse
.table-striped > tbody > tr:nth-of-type(odd) {
background: #fff !important;
}
.table-striped > tbody > tr:nth-of-type(even) {
background: #f9f9f9 !important;
}
ruby-position 排序
1.gem ‘acts_as_list’
2.model
1 | acts_as_list |
3.controller
1 | up |
4.view
一般置顶 最末会刷新页面
上移 下移用js
1 | <%= link_to content_tag(:i, "", class: "fa fa-arrow-up"), "javascript:;", method: :post, |
1 | <script type="text/javascript"> |
ps: 必须有position字段如果是后加的 在migration文件中需要
1 | ExampleCv.order(updated_at: :desc).each.with_index(1) do |todo_item, index| |
微信小程序-获取小程序二维码
def miniProgramQR
res = RestClient.get 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid='+ ENV['WECHAT_MINIPROGRAM_APP_ID'] + '&secret=' + ENV['WECHAT_MINIPROGRAM_APP_SECRECT']
json = JSON.parse res.body
access_token = json['access_token']
miniProgram_image = RestClient.post 'https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=' + access_token, {'page': 'pages/cvShare/cvShare', 'scene': @cv.token}.to_json, {content_type: :json, accept: :json}
image = Base64.encode64 miniProgram_image
render json: {
image: image
}
end
ps: scene 最大32位 可以用’type:’ + params[:file_type] +’,id:’ + params[:token]这种字符串 然后在小程序中用js分割,不可以用json格式、也不可以用to_s
显示用$(‘.qr-code’).attr(‘src’, “data:image/jpeg;base64,” + data[‘image’])
ruby-ascii-8bit 转image
1.将data转成base64编码 用Base64.encode64 data
2.用data_uri的方法 将base64编码展示出来
“data:image/jpeg;base64,data”
js-data传参键名是变量不能识别
const fileData= {};
fileData[fileType] = data;
ps: 一定要注意 在里面写的时候data: fileData 这么传值!
js-判断页面是否加载完成
对于页面来说,dom结构,样式,脚本也属于内容,页面内的图片文字视频音频也是内容。
那么我们常用的 window.onload和 jquery 中的 ready 函数就能判断内容是否全部加载完成吗?答案是否定的。以上两个只能判定页面骨架加载完成了,但是不能判定页面资源是否加载完成,比如页面的超大图片,视频等。还有如果是有异步请求的资源等都无法检测到的,尤其是在 onload 之后发生的请求。
onreadystatechange回调不行,原因:每当有请求发生时 readyState 都会改变并触发 onreadystatechange
如果需要动态处理 dom 那么在 onload|ready 中就可以了,因为此时页面 dom 已经加载完成了。如果你需要对某些异步的请求做监控,则只需要在对应的异步中添加上回调即可。
1 | if(document.readyState == “complete”) //当页面加载状态 |
微信小程序-iphonx适配
在app.js文件中 创建全局变量,然后获取设备型号
1 | globalData: { |
在需要引用的页面js文件中onload方法里获取全局变量
1 | let isIphoneX = app.globalData.isIphoneX; |
ps:button 的边框用button::after{ border: none; }来去除
redis-数据缓存
gem ‘redis-namespace’
bundle
新建文件 config/initializers/redis.rb
1 | $redis = Redis::Namespace.new("site_point", :redis => Redis.new) |
存 $redis.set(“test_key”, “Hello World!”)
取 $redis.get(“test_key”)
删 $redis.del “categories”