
由于我司程序员太懒,生成轨迹算法直接取的随机数,导致生成的轨迹图变成了一个网状的结构,根本无法使用。
搜索以后,发现一个很有意思的轨迹生成算法,分享给大家。
算法思想
- 定义起点和终点
- 在起点和终点直接取中点
- 在起点与终点连线的垂直方向上进行变化,取得第三点
- 连接起点、中点、终点。
图示
1 定义起点和终点

2 取中间点

3 在中间点上取垂线

4 连接起点、中点、终点,形成轨迹图

这样,就完成了一条路径的生成,很简单,但是比较有效。

由于我司程序员太懒,生成轨迹算法直接取的随机数,导致生成的轨迹图变成了一个网状的结构,根本无法使用。
搜索以后,发现一个很有意思的轨迹生成算法,分享给大家。




这样,就完成了一条路径的生成,很简单,但是比较有效。
之前用的翻译插件cos_slug_translator 因为一些原因,并没有办法很好的和 JetPack 一起联用。导致每次发布到 Twitter 的文章链接都是失效的。为此,我前往 Github ,在 JetPack 的项目中发起了一个 Issue 。
Jeremy 给我了一些建议 , 于是,我就重新做了一个插件,并将这个插件提交到了官方的插件系统。希望可以通过审核。
后续考虑继续支持其他一些翻译平台,比如,有道翻译的新 API、搜狗、Google等一系列。特别是 Google, 这样就可以支持非中文文章了,比如,日语的。
项目仓库:
其实苦难一直都在,从未远离过我们,轻松筹之类的平台只是将他们放在了我们的眼前罢了。
在进行 Vue 后台开发时,一般来说,我们希望我们的应用的首页是 100% 高度,其样式大致如下

但是一开始,往往会遇到高度没有办法设置为 100%。
这是由于在 Vue 中,并没有给 html,body,#app 设置默认高度
解决方案也很简单,只需要在 App.vue 的 style 中添加如下代码
html,
body,
#app {
height: 100%;
}
Code language: CSS (css)我有两个朋友,在某厂做 BaaS 服务。
在进行产品开发时,到了某个产品时,大 boss 竟然想让用户自己去买服务器来搭服务,并通官方通过的 SDK 进行转接。这让我百思不得其解。
因为在我看来, BaaS 这种业务,就是把弹性、运维、环境都从用户这里拿走,让用户只关注逻辑和业务,从而更好的关注自己的业务。这种将一部分能力拆出来,由用户自建的行为十分的奇葩,将从用户这里拿走的弹性、运维、环境问题,重新又踢回给了用户。
作为一个 BaaS 服务,如果你让用户想起来自己去搞弹性,那基本就是在提醒用户,你不要用我们的服务了,你自建吧,反正弹性什么的你还是要自己搞。没区别。
后来,我想明白了,估计是 大 Boss 因为该产品之前的一些功能不稳定,总是被客户吊,所以在设计新的产品时,选择了稳妥,但是很难用的方案。这样的方案虽然难用,但不是不能用。可能想着得过且过,不背锅算了。
不过,如果同样的事情让我来做,可能会有不一样的看法。
在我看来,你可以因为业务的不稳定而被吊,这没问题,自己的技术力量不足,无法解决问题是应该被吊。但是如果你因为稳定,而不去做一些东西,这等于拱手将客户送人。我宁可被吊,但是用户要被我抓在手里。有了用户,我才能获取足够多的反馈,才能够让我以后不被吊。你把皮球都踢出去了,也把用户都踢出去了,yi以后你想要被吊,也没有机会了。
在我看来,一个 BaaS 、SaaS 层的服务,最好的三个状态是这样的:
此外,这个 Boss 的想法也让我觉得可笑,愿意背锅,敢于背锅是对自己开发团队、产品团队的信任,我信任你不会让我背锅。把锅甩出去了,表现了你对自己的产品、自己的团队没有信心。倘若团队离心,产品又怎么可能做好呢?

对于我自己:



得到:











如何管理人群这里的描述,颇有一些“愚民政策”的意味。

我一个朋友,一直想问我,有没有什么书,可以告诉他到底应该怎么写代码?
我一直也很迷惑,因为我自己的写代码的过程并不是通过某一本书而来的,而是通过不断的编程实现的。因此,我不知道到底什么才是所谓的编程思想。
直到今天我在 Lynda 上看一个视频教程,我才明白,设计模式就是编程思想!
掌握了设计模式,你就明白了代码是怎么写的了。剩下的,不过是最基础的语法问题罢了。
在 Vue Router 中,并没有一个所谓的默认首页的功能,所以我一直都很好奇,应该如何实现这样的功能?如果没有这样的功能,又如何实现一个项目的默认显示页面呢?
今天,终于有了答案。
这样的功能不是内置的,不过你可以通过 router.beforeEach来实现这个功能。
具体的思路是,在跳转前,对目标路由进行检测,如果目标路由的 meta 信息中写明了需要进行鉴权,就跳转到默认的登陆页面。这样,就可以实现默认显示登陆页面的功能。
具体可以参考的代码
/// 省略引用的代码
let router = new Router({
mode:"history",
base:base,
routes: [
{
path: '/login',
name: 'login',
component: Login,
meta: { title: '登陆' }
},
{
path: '/',
name: 'home',
component: Home,
meta: { title: '首页', requireLogin:true }
}
]
})
router.beforeEach((to, from, next) => {
const { name,meta } = to;
const { requireLogin } = meta; // 提取登陆 标志
if(name === 'login'){
return next();
}
const needLogin = requireLogin;
if(needLogin){ // 如果判断需要登陆,就跳转登陆。
return next({
name:"login",
params:{
back: to
}
})
}
next();
})
Code language: JavaScript (javascript)以前,我们使用 reset.css 来完成 HTML 样式的初始化,借助这个 css 文件,可以将多个不同平台,不同系统下的基础组件的样式整合一致。
如今,我们可以使用 Normalize.css 来完成这个工作,也非常简单
yarn add normalize.css
Code language: CSS (css)安装完成后,在 vue 的主文件,引入即可
import 'normalize.css/normalize.css'
Code language: JavaScript (javascript)