Lydia's blog

Every day to be a little better


  • Home

  • Archives

  • Search

ruby sql find string in array

Posted on 2020-04-06 19:32

ruby 数组中查一个值 用any

examples = examples.where(“:name = ANY(cv_templates)”,name: cv.cv_type)

ios NSDictionary 转换成JSON

Posted on 2020-04-01 19:51

上传接口请求参数只接受 json格式的 平时都是dict格式上传的

在网上找了两个dict转json的方法

Read more »

ios崩溃log查看

Posted on 2020-03-27 18:00

ios 经常出现版本崩溃 但是不知道原因的问题 每次找都很崩溃 直到学会了 直接用xcode看崩溃日志

Read more »

ios localstorage 单例模式

Posted on 2020-03-27 16:46

WKWebView 在内存占用上优化的很多。但是在实践中发现bug:localstorage信息不一致。
A页面和B页面都存在 一个WKWebView。 在B页面使用localstorage保存信息。 回到A页面取不到最新的数据

Read more »

ios universal link

Posted on 2020-03-22 16:25

第一次接触 universal link是发现有的app可以发短信里面带链接 点击直接用safari打开 跳转到app 大概粗略的看了一下 没有具体实施
第二次则是由于新版ios 微信sdk必须配置 每次到universal link配置就会卡住 所以决定研究一下这个到底是什么

官方文档:https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/enabling_universal_links?language=objc

https://developer.apple.com/library/archive/documentation/General/Conceptual/AppSearch/UniversalLinks.html#//apple_ref/doc/uid/TP40016308-CH12-SW1

Read more »

ios IAP

Posted on 2020-03-02 21:25

ios 所有虚拟商品的支付都不允许接第三方支付 实在是太烦了 只能自己接IAP 也是第一次接触 将过程记录下来 有任何问题 欢迎指教
官方文档:https://developer.apple.com/documentation/storekit/in-app_purchase?language=objc

​ https://help.apple.com/app-store-connect/#/devb57be10e7

相关参考:https://www.jianshu.com/p/7ae9654b85ee

具体操作

Read more »

ios test flight

Posted on 2020-02-20 17:34

之前没有接触过 公司有小伙伴需要测试版都是手机连到我的电脑上直接跑的 由于疫情影响不能去公司上班 ios还要正常发版 需要测试 就用到了test flight

参考:https://www.jianshu.com/p/4be185e4069c

Read more »

python初体验

Posted on 2019-12-26 12:07

安装环境

  1. 安装python 3.7
  2. 安装 anaconda 直接搜索下载
  3. 安装虚拟环境
    3.1 创建环境 conda create –name your_env_name python=3.5
    3.2 conda env list 查看虚拟环境列表
    3.3 conda create –name new_env_name –clone old_env_name 复制环境
    3.4 conda remove –name your_env_name –all 删除环境
    3.5 conda activate –name 切换环境
    3.6 conda install -n env_name package_name 为指定环境安装某个包
    https://blog.csdn.net/menc15/article/details/71477949
  4. 安装Django
  5. 下载pycharm
    Read more »

iOS 13 adjust

Posted on 2019-10-07 15:48
  1. presentView 不是全屏

    1
    nav.modalPresentationStyle = UIModalPresentationFullScreen;
  2. search bar 左侧icon位置偏移
    在uiimageview 外面套一层uiview 设置uiview的职位

    1
    2
    3
    4
    5
    6
    7
    UIView * iconOutView = [[UIView alloc]initWithFrame:CGRectMake(0, 0, 40, 30)];
    UIImageView* iconView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"搜索图标"]];
    iconView.center = CGPointMake(iconOutView.frame.size.width/2,iconOutView.frame.size.height/2);
    [iconOutView addSubview:iconView];

    self.leftView = iconOutView;
    self.leftViewMode = UITextFieldViewModeAlways;
  3. launch img要被禁用了 需要配置成launch screen
    先创建一个launch screen文件
    点击xcode 右上角的加号 添加imageview
    添加约束显示

  4. dark mode status bar not show
    Status bar style Default
    User Interface Style Light
    View controller-based status bar appearance YES

vue项目接入微信js

Posted on 2019-08-01 11:05
  1. $ npm install weixin-js-sdk –save

  2. 引入wechat js文件

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    import wx from 'weixin-js-sdk'

    const wxPlugin = {}
    wxPlugin.install = function (Vue, options) {
    function extend (obj1, obj2) {
    for (var k in obj2) {
    if (obj1.hasOwnProperty(k)) {
    if (isObject(obj2[k])) {
    extend(obj1[k], obj2[k])
    } else {
    obj1[k] = obj2[k]
    }
    } else {
    obj1[k] = obj2[k]
    }
    }
    return obj1
    }
    function getProp (obj, str) {
    var result = extend({}, obj)
    var array = str.split('.')
    for (var i = 0; i < array.length; i++) {
    if (result[array[i]]) {
    result = result[array[i]]
    } else {
    result = result[array[i]]
    break
    }
    }
    return result
    }
    // 判断options.config的数据类型
    if (!options.config) {
    console.error('wxPlugin Error:config属性必须为一个对象或者promise,不能为空')
    return
    }
    // 如果config为一个对象
    if (Object.prototype.toString.call(options.config) === '[object Object]') {
    wxConfig(options.config)
    }
    // 如果config为一个promise
    if (options.config instanceof Promise) {
    options.config.then(function (res) {
    var config
    if (options.path) {
    config = getProp(res, options.path)
    } else {
    config = res.data
    }
    wxConfig(config)
    })
    }
    function wxConfig (config) {
    wx.config({
    debug: false,
    appId: config.appId,
    timestamp: config.timestamp,
    nonceStr: config.nonceStr,
    signature: config.signature,
    jsApiList: options.actions
    })
    wx.error(function (err) {
    console.error(err)
    })
    }
    Vue.prototype.wx = wx
    }
    export default wxPlugin
  3. main.js中引用

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    import wxPlugin from 'common/js/wechatJs.js'
    const options = {
    config: api.me.getWechatJsConfig({url: location.href}),
    // 如果config是promise,path需要指定如何从promise返回值中拿到符合格式的object;
    // 如果config是一个object,则无需指定path值
    path: 'data',
    // 声明用到的微信api
    actions: ['onMenuShareAppMessage', 'onMenuShareTimeline']
    }

    Vue.use(wxPlugin, options)
  4. 页面中引用

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    wx_share () {
    this.wx.ready(function () {
    // 分享给朋友
    this.wx.onMenuShareAppMessage({
    title: '问题反馈',
    desc: '问题反馈',
    link: location.href,
    imgUrl: 'https://files.wondercv.com/App%20Icon@2x.png',
    success: function () {
    alert('分享成功')
    }
    })
    // 分享到朋友圈
    this.wx.onMenuShareTimeline({
    title: '问题反馈',
    link: location.href,
    imgUrl: 'https://files.wondercv.com/App%20Icon@2x.png',
    success: function () {
    alert('分享成功')
    }
    })
    })
    }
1234…28

Lydia

This is lydia's blog

277 posts
1 categories
46 tags
© 2020 Lydia
Powered by Hexo
|
Theme — NexT.Muse v5.1.4