我的GitHub
0%

背景:

正常情况下,vue是由父到子的单向数据流。但总会碰到一些操蛋的需求,想直接在子组件去修改对应数据。这时候就会发现,报警告️了。只能写子组件通知父组件修改对应数据,代码就又大又不优雅。

这时候就会想,v-model怎么实现的,自己封装的组件能不能用?还有没有别的方式。

于是乎有了这篇憨批文章。

其实相关文章也有很多了,但总觉得还是要自己总结一下比较好。

先上官网链接

自定义组件使用model

使用 JavaScript 代替模板功能

这里我想举好几个例子,但是又不知道怎么分点,因此我就随意分了

一.默认value和input的例子

阅读全文 »

cocoapods 1.8以上,采用了CDN,目的是为了不再将索引放在本地,下载又慢,还占据本地内存。

事是个好事,但是国内有墙,cdn又是外国的地址,对国内开发者来说就很烦。

所以我们还得用以前的方式,本地下载索引。

只需要执行

1
pod repo add master https://github.com/CocoaPods/Specs.git

上面那个是官方源,你也可以用国内的清华源

1
pod repo add master https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git

二者任选其一即可。

如何查看成功没

1
pod repo
阅读全文 »

Flutter的中文文档写的啥啊。。。让人有点摸不着头脑。。。

1.打开命令行工具

1
2
3
//使用bash的改.bash_profile ,使用zsh的用.zshrc
vim .bash_profile

然后添加

1
2
export PUB_HOSTED_URL=https://pub.flutter-io.cn
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn

这一步是添加国内镜像

保存以后source一下

1
source .bash_profile 

2.找个地方新建一个文件夹
(我喜欢把所有环境相关的东西放在一个文件夹下,放不放当然随你们)
例如我在自己的用户下面新建一个叫环境的文件夹(中文命名不太专业emmm)
文件夹
接着我们打开终端,cd到该目录下并cloneFlutter的项目

1
git clone -b beta https://github.com/flutter/flutter.git
阅读全文 »

Plugin的创建与开发,已经有各路大神写过,在这里不赘述了。

这里只讲讲在我天朝特色下,发布遇到的坑。

死活无法连上外网,报错为获取谷歌账号授权失败

请求google授权,翻出去,登录了账号,授权了,但是终端依旧报错如下:

1
2
3
It looks like accounts.google.com is having some trouble.
Pub will wait for a while before trying to connect again.
OS Error: Operation timed out, errno = 60, address = accounts.google.com, port = 53165

原因都知道,天朝特色。都知道终端要翻墙,但查来查去,就是不说怎么终端翻墙,真是气死人。(我从晚上11点想发布了去睡觉一直搞到凌晨4点)

我就直说了吧。

一般都是小飞机,然后开全局模式,然后发现终端还是不行。

下面我说如何解决

解决方案

阅读全文 »

Jenkins配合FastLane完成打包

FastLane的使用

Jenkins的安装

我们将两者组合起来.

首先说一下,ios打包用的xcbuild命令,所以必须是macos环境,这个不用多解释.

所以….Jenkins所在宿主机得是mac系统的(如果有大神知道别的方式,麻烦指点一下),因为没有多余的mac机子,我就搭在了我自己的机子上.

接下来我们说说怎么搞

启动Jenkins

首先,启动终端,输入

1
Jenkins
阅读全文 »

FastLane-ios自动打包效率神器

背景: 不想每次测试都喊我打包,很累的,所以开始寻找,有你的世界在哪里

一.安装fastlane

1.换ruby源

多话不说,墙,换成国内镜像源

1
2
3
4
$ gem sources --add https://gems.ruby-china.com/ --remove https://rubygems.org/
$ gem sources -l
https://gems.ruby-china.com
# 确保只有 gems.ruby-china.com

2.开始用gem安装(不建议使用brew cask安装)

1
sudo gem install fastlane -NV

耐心等待,等装完

二.为项目配置fastlane

阅读全文 »

iOS内测分发

2019-12-10更新

gitee似乎不让下载了。可以考虑放到别的带https的地方,比如腾讯云的对象存储桶,github等等,反正有https就行,方法不变。

2019-11-15更新

不要再问android怎么搞了。。。直接apk往仓库一丢,网页给个链接,点一下不就完事了,比iOS省事多了

背景:

我写博客一般都会写背景,因为我觉得光写某个技术点没有意义,技术最终都是为业务服务,因此我喜欢交代自己的使用场景,基于什么原因,我做过哪些常识,为什么最终这么做,这么做能解决我的什么问题….

我们是一个小业务部,而且是传统行业转型互联网,业务部内还处于”史前洪荒”的状况,各种现在流行的东西都没有使用,移动端更是如此,开发迭代出的app都是靠微信/内部邮件转发来转发去,iOS更难受,由于ipa包不能像Android一样,随下随装,”必须”依赖电脑用iTools或类似的工具去安装ipa包,很是繁琐.

说到这里肯定就有人提到:”为啥不用蒲公英(fir)等内测分发平台?”

说实话我第一反应也是盯上了这些,但是要实名信息注册啊QAQ,企业要传营业执照,个人要传身份证信息,作为一个较为保守且不想这么兴师动众的人,我选择了放弃使用这些平台.那么没办法了,只能自己写了.那么接下来,我会告诉你,他们是怎么把ipa包,转成一个二维码让你能够下载的(都是猜的).当然,有企业账号自己做企业分发,也可以用我这个方式

阅读全文 »

本文写于2019-4-28,应该是最新安装教程了

一.安装Java

声明,我不是干安卓开发或者后台开发的,我以下安装的这些版本的java会不会对后台或者安卓项目产生影响我一概不知,我只是为了安装Jenkins而加入一个java8而已,不习惯的同学可以自行去Orcale的官网下载java8

1.安装sdkman

使用brew安装Jenkins的时候,如果你没有安装java8肯定会报错要求你安装java1.8版本(我试过装java11不行),所以不要挣扎了,装java8吧

这时候你肯定想用brew安装java,你会发现只有java6和java11,java8的安装包被删了

你肯定搜到过下面两个命令:

1
2
brew tap caskroom/versions
brew cask install java8

放弃吧.不行的

这里我推荐另外一个安装工具:SDKMAN

阅读全文 »

我们使用的是3.x版本,需要做如下操作

一.引入react-navigation

1
yarn add react-navigation

如图
如图,我们发现有很多warn,报的是一些依赖没满足,一般我们说程序员不看warn,肯定就直接运行了.

但是作为过来人,告诉你肯定会报错,缺少这个warn当中的一个库react-native-gesture-handler所以也别走弯路,把这些库都给加上

1
2
3
4
5
6
7
8
9
#这是一个手势库
yarn add react-native-gesture-handler
#我也不知道用来干嘛的库,大概是一些屏幕设计吧,这是它的github:https://github.com/browniefed/react-native-screens
yarn add react-native-screens

#react-native-gesture-handler又依赖如下库
yarn add react-art
yarn add react-dom
yarn add react-native-web

全都装完以后,link一下项目

1
react-native link

link警告

这里注意了,在0.59中已经提到,不建议这样做,后续会移除这个命令,必须带上包名link才行

阅读全文 »