这样,电子邮件布局将基于我们

这样,电子邮件布局将基于我们在 custom.css 文件中定义的样式。 这种方法的好处是不同的邮件使用不同的主题。

Exception 辅助函数

Laravel 5.5 带来了两个辅助函数,他们能帮助我们编写更富表达能力的代码。这两个辅助程序就是 throw_if 和 throw_unless 方法。两者都需要三个参数,而且第三个参数都是可选的。

让我们来看一下这些异常的各种不同的实现:

使用 throw_if 方法,异常会在第一个参数计算出来为 true 的时候被抛出。

实现 throw_unless 方法跟我们上面所做的并没有不同, 唯一的差别就是异常只会在第一个参数计算出来为 false 的时候被抛出:

例子并不是最好的,但足够来体现我们的展示意图了。

介绍 migrate:fresh 命令

你可能发现自己处于需要重建数据库的境地。在以前的 Laravel 版本中,我们通过运行 php artisan migrate:refresh 命令来实现。migrate:refresh 命令基于针对每个迁移文件的 down 方法指定的内容回滚所有迁移,然后再次运行迁移:

但你可能数次遇到这个命令的问题,尤其是使用外键约束或者你的某个迁移中存在定义得不太好的 down() 方法。如果发生这样的事情,我们多数时候会手工删除产生问题的表 —— (可能通过 CLI 或 GUI)。这正是 migrate:fresh 能帮助我们的地方。这个命令删除所有表,然后再次运行已经存在的迁移:

但乘坐渡轮需要两枚硬币的船费。

然后在众人的围观下,他套进了一颗南瓜里,变成了又一个「南瓜村民」……

其他村民都很开心,对这位「久别重逢」的老朋友嘘寒问暖,对哥俩的劳动表示非常满意:

谢谢你们又挖出两位派对成员。

那么也就是说,这个村子里的所有村民,其实都是像这样死后通过南瓜的外壳复活。

这个村庄,其实如同人死后的一个「归属」,从人间离开,在这里重生。

那么,这个森林,事实上就是「人死后去往的世界」。

而这对兄弟之所以会来到这里,而且全然不记得之前的事情,也就意味着他俩也已经……

细思极恐,后脊发凉。

后面又有一集,说兄弟俩如果想要回家,就需要坐渡轮去找一个「女巫」。

但乘坐渡轮需要两枚硬币的船费。

有牛逼的国外网友列出了考据:

在希腊神话中,死者渡过冥河需要付给船夫卡戎(Charon)的一枚硬币。如果不付硬币,则不能渡河。

因此,一些国家有在死者眼睛上放置两枚硬币的习俗。

这再一次暗示了,故事中的世界是「亡灵的世界」。

最开始显然是持怀疑态度的 ag环亚国际手机客户端

首先,我们把目光看向了 Google 今年 3 月份开源的一种新的 JPEG 编码算法 – Guetzli [1],利用它编码得到的 JPEG 图像比 libjpeg 产生的同等质量的图像小 20% – 30%,之所以优先研究 JPEG 编码算法,是因为 JPEG 的兼容性很广,业务能够以极低的成本接入使用。

我们知道,传统的 Libjpeg 库已经能将原图压缩到很低,如何将流行 30 年的算法改进如此之大,最开始显然是持怀疑态度的 ag环亚国际手机客户端,但考虑到 Google 在图像编解码领域的权威,我们还是带着极大的好奇心开始了对 Guetzli 的研究。

从论文介绍的原理上来看,Guetzli 算法引入了一种评价图像之间质量差异的标准 – Butteraugli [2] ag环亚国际手机客户端,在算法编码过程中使用其来计算编码后产生的图像和原图的质量差异,即失真度,从而决定后续的编码策略,通过这样一个编码-评分-反馈的循环闭环逻辑,实现在保证图像质量前提下,尽可能对原图进行压缩。

可想而知,该算法的编码时间将会是传统的 Libjpeg 算法的数倍,并且作者提到该算法运行时需要较高的内存,换算公式是 1M 像素 ag环亚国际手机客户端 = 300MB 内存,例如 1000 * 1000 像素的图像编码需要 300MB 内存,也就是牺牲编码时间和内存换取更大的压缩比,这对于对编码时间要求比较苛刻的服务显然是不实用的,但是考虑到这只是初始版本,还有一定的成长空间,虽然从 Github 上的 Issue 上来看,作者短期并不打算优化内存使用。

我们有些服务对编码时间并不关心,例如开屏广告,这种图像一般 Size 较大,对图像质量的要求也很高。因此,虽然现在 ag环亚国际手机客户端Guetzli 并不适合大规模应用,但还是值得持续关注。

WebP

源于视频编码领域 VP8 的 WebP 是 Google 2010 年开源出来的图像编解码算法, 并且持续受到重视,本身支持图像的有损压缩和无损压缩,也支持类似 GIF 的动图格式,据官方说明,WebP 的无损压缩格式比 PNG 少 26% 的图片体积,有损压缩格式比同等质量下的 JPEG 图片少 25%-34%。值得一提的是,WebP 的无损格式支持透明度(即阿尔法透明通道),对于 RGB 的图像,其有损压缩格式亦支持透明度。

对比其他第三方资料,官方数据似乎有一些谦虚,例如腾讯 ISUX 提到

无损压缩后的 WebP 比 PNG 文件少了 45% 的文件大小,即使这些 PNG 文件经过其他压缩工具压缩之后,WebP 还是可以减少 28% 的文件大小。 ag环亚国际手机客户端

可是,谁又看到 ag环亚国际手机客户端付出了多少才有的今天

前几天,我在小明SEO博客看到一篇文章,叫《如果再不改变SEO博客必将走到尽头》。这篇文章说了了千百个SEO博客的痛 ag环亚国际手机客户端点,几乎都是千篇一律,没有自己的一点风格。是呀,我们这些自媒体博客何尝不是这样呢?看来看去都是那么所谓的原创,没有一点吸引力。
我在松哥的论坛发布了一篇介绍自媒体的文章,要大家把写作当成习惯。然后有位网友评论说,自媒体博客如果再不转型的话,后果——, ag环亚国际手机客户端虽然他后面没有说,但是我知道他的意思是说自媒体该转型了。这句话,也让我有感触很深。
这段时间以来,我发现很多人都开始做自媒体博客了。现在,你只要看见别人建立博客,他们大多数都是想做自媒体的。不过,难道建立个博客网站就是自媒体博客了吗?很多人不明白到底什么是自媒体博客,脑子一发热就加入了。
在做自媒体博客之前,我希望大家能够考虑好下面几个问题:

1,你做自媒体博客的目的是什么?
做什么都是有目的了,可是,你的目的是什么呢?挣钱?推广产品?喜欢写作?出名?不管你的目的是什么,至少你要有目的,要不然你就会像一个无头的苍蝇乱撞,也不知道到底要去向何方。
2,你的自媒体博客如何运营? ag环亚国际手机客户端
自媒体博客想要建立非常简单,几小时就搞定了,或者花钱找人制作就行了。或是,博客建立好后,我们应该如何运营呢?每天写一篇原创文章?到各大网站去投稿?是呀,很简单,可是你知道一篇原创文章要多长时间能写完了,投稿需要多少时间吗?你每天有多少时间来做这些?
3,你的自媒体博客如何盈利?
做自媒体博客是为了什么?如果你非常的有钱,搞个博客就是纯粹为了玩,你们耗的起。可是, ag环亚国际手机客户端对于一起屌丝来说,穷的饭都吃不上了,如果博客一直不挣钱,你还会有心情搞博客吗?我当初成立邵连虎博客的时候我在想,松哥的博哥的博客写了五年多了,我能坚持了吗? ag环亚国际手机客户端
大家都知道卢松松博客,如今写了有六年了才有今天的成功。很多人羡慕松哥,我也一样,可是,谁又看到 ag环亚国际手机客户端付出了多少才有的今天。我也很幸运,写了一年三个月的博客一分钱没挣钱,也就在那时成立了邵连虎博客VIP会员,二月多现在发展到了147人,找到了自己的自媒体博客盈利模式。

环亚娱乐ag88登录

前言

最近部门在招前端,作为部门唯一的前端,面试了不少应聘的同学,面试中有一个涉及 Promise 的一个问题是:

网页中预加载20张图片资源,分步加载,一次加载10张,两次完成,怎么控制图片请求的并发,怎样感知当前异步请求是否已完成?

然而能全部答上的很少,能够给出一个回调 + 计数版本的,我都觉得合格了。那么接下来就一起来学习总结一下基于 Promise 来处理异步的三种方法。

本文的例子是一个极度简化的一个漫画阅读器,用4张漫画图的加载来介绍异步处理不同方式的实现和差异,以下是 HTML 代码:







Promise


正在加载…



单一请求

最简单的,就是将异步一个个来处理,转为一个类似同步的方式来处理。 先来简单的实现一个单个 Image 来加载的 thenable 函数和一个处理函数返回结果的函数。

function loadImg (url) {
return new Promise((resolve, reject) => {
const img = new Image()
img.onload = function () {
resolve(img)
}
img.onerror = reject
img.src = url
})
}

异步转同步的解决思想是:当第一个 loadImg(urls[1]) 完成后再调用 loadImg(urls[2]),依次往下。如果 loadImg() 是一个同步函数,那么很自然的想到用__循环__。

for (let i = 0; i < urls.length; i++) { loadImg(urls[i]) } 当 loadImg() 为异步时,我们就只能用 Promise chain 来实现,最终形成这种方式的调用: loadImg(urls[0]) .then(addToHtml) .then(()=>loadImg(urls[1]))
.then(addToHtml)
//…
.then(()=>loadImg(urls[3]))
.then(addToHtml)

那我们用一个中间变量来存储当前的 promise ,就像链表的游标一样,改过后的 for 循环代码如下:

let promise = Promise.resolve()
for (let i = 0; i < urls.length; i++) { promise = promise .then(()=>loadImg(urls[i]))
.then(addToHtml)
}

promise 变量就像是一个迭代器,不断指向最新的返回的 Promise,那我们就进一步使用 reduce 来简化代码。

urls.reduce((promise, url) => {
return promise 环亚娱乐ag88登录
.then(()=>loadImg(url)) 环亚娱乐ag88登录
.then(addToHtml)
}, Promise.resolve())

在程序设计中,是可以通过函数的__递归__来实现循环语句的。所以我们将上面的代码改成__递归 环亚娱乐ag88登录__:

function syncLoad (index) {
if (index >= urls.length) return
loadImg(urls[index]).then(img => {
// process img
addToHtml(img)
syncLoad (index + 1)
})
}

// 调用
syncLoad(0)

好了一个简单的异步转同步的实现方式就已经完成,我们来测试一下。 这个实现的简单版本已经实现没问题,但是最上面的正在加载还在,那我们怎么在函数外部知道这个递归的结束,并隐藏掉这个 DOM 呢?Promise.then() 同样返回的是 thenable 函数 我们只需要在 syncLoad 内部传递这条 Promise 链,直到最后的函数返回。

ag88环亚国际娱乐平台 的效果图如下

为什么要做加载

只想说, 本文最重要的是对 CSS, 伪元素, keyframe的分享, 以及读者对这些东西的真正掌握, 我并不是怂恿大家在每一个页面的前面都去加一个酷炫的加载

我是如何做的

不同的页面, 对加载的设计也就可能不同. 本文设计的加载适合大多数页面.

并且, 本文假设读者已经非常熟悉伪元素, CSS 动画属性和keyframe, 如果读者想重温, 下面两篇文章可做参考

学会使用 CSS 中的 :after 和 :before
keyframe 动画直通车
开始入门

在开始一起构建它前, 我们先看看它最后的效果

正如你所看到的, 我们将经历 4 个步骤

边框一个接一个地出现
红/橙/白色方块向里滑入
方块向外划出
边框消失
我们只需要 animation-direction: alternate 来完成步骤 1 和 2, 步骤 3 和 步骤 4 我们可以使用 reverse, 另外, 我们可以使用 animation-iteration-count: infinite 重复动画

首先, 我们先书写好基本的 HTML 结构

JavaScript








1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21







构建 logo 本身

bVSJ0f

一开始我们先实现 logo 本身, 而不是最终版本的效果

父级元素 logo, 不同颜色的方块都是它的子元素

JavaScript

1
2
3
4
5

我们用 less 来实现

JavaScript

.logo {
position: relative;
width: 100px;
height: 100px;
border: 4px solid black;
box-sizing: border-box;
background-color: white;

& > div {
position: absolute;
}

.red {
top: 0;
bottom: 0;
left: 0;
width: 27%;
border-right: 4px solid black;
background-color: #EA5664;
}
/* Similar code for div.orange and div.white */
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
.logo {
position: relative;
width: 100px;
height: 100px;
border: 4px solid black;
box-sizing: border-box;
background-color: white;

& > div {
position: absolute;
}

.red {
top: 0;
bottom: 0;
left: 0;
width: 27%;
border-right: 4px solid black;
background-color: #EA5664;
} ag88环亚国际娱乐平台
/* Similar code for div.orange and div.white */
}
ag88环亚国际娱乐平台 的效果图如下

bVSJ0q

边框动画

接下来, 我们将进入棘手(有趣)的部分

CSS 不允许我们直接对 div.logo 的边框进行设置达到我们想要的效果, 所以我们必须去除原有的边框, 采用其他的办法来实现
ag88环亚国际娱乐平台
我们要把四个边框分割开来, 然后让它们有序地出现, 所以, 我们可以使用覆盖整个 div 的两个透明的伪元素

废话少说, 就让我们开始吧, 我们先做出它最初始的样子. 我们让 div.logo :: before 绝对位于 div.logo 的左上角,代表方块的上边框和右边框
, 让 div.logo::after 绝对定位 div.logo 的右下角, 代表方块的下边框和左边框

现在, less 代码变成了这样

JavaScript

.logo {
position: relative;
width: 100px;
height: 100px;
box-sizing: border-box;
background-color: white;

&::before,
&::after {
content: ”;
position: absolute; ag88环亚国际娱乐平台
width: 100%;
height: 100%;
box-sizing: border-box;
border: 4px solid transparent;
}

&::before {
top: 0;
left: 0;
border-top-color: black;
border-right-color: black;
}

&::after {
bottom: 0;
right: 0;
border-bottom-color: red; // Red for demo purposes only
border-left-color: red;
}
}
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 ag88环亚国际娱乐平台
26
27
28
29
30
31
.logo {
position: relative;
width: 100px;
height: 100px;
box-sizing: border-box;
background-color: white;

&::before,
&::after {
content: ”;
position: absolute;
width: 100%;
height: 100%;
box-sizing: border-box;
border: 4px solid transparent;
}

&::before {
top: 0;
left: 0;
border-top-color: black;
border-right-color: black;
}

&::after {
bottom: 0;
right: 0;
border-bottom-color: red; // Red for demo purposes only
border-left-color: red;
}
}
现在效果长这样

bVSJ0p

接下来, 我们就用 keyframe 做 div.logo::before 的第一个动画

我们将 width 和 height 初始都为 0, 然后用 keyframe 将 width 和
height 调整到 100%

随着我们在相应的时间把边框从透明变为黑色, 我们想要的最开始的效果就出来了

该代码展示了伪元素的初始动画

创建堆叠上下文的方式ag环亚国际手机客户端

创建堆叠上下文的方式ag环亚国际手机客户端

为此,首先要找到所有能够使元素生成堆叠上下文的方法。

So,如何触发一个元素形成 堆叠上下文 ?方法如下(参考自 MDN):

根元素 (HTML),ag环亚国际手机客户端
z-index 值不为 “auto”的 绝对/相对定位,
一个 z-index 值不为 “auto”的 flex 项目 (flex item),即:父元素 display: flex|inline-flex,
opacity 属性值小于 1 的元素(参考 the specification for opacity),
transform 属性值不为 “none”的元素,
mix-blend-mode 属性值不为 “normal”的元素,
filter值不为“none”的元素,
perspective值不为“none”的元素,
isolation 属性被设置为 “isolate”的元素,
position: fixed
在 will-change 中指定了任意 CSS 属性,即便你没有直接指定这些属性的值
-webkit-overflow-scrolling 属性被设置 “touch”的元素
接下来,我们要验证,是否所有设置了上面属性样式之一的元素,都有使其子元素的 position: fixed 失效的能力?

为此我做了下面一个小实验,基于最新的 Blink 内核。可戳:
ag环亚国际手机客户端
层叠上下文对 fixed 定位的影响(不同内核下表现可能不一致)

image

我们设置两个父子 div,子元素 fixed 定位,通过修改父元素生成层叠上下文,观察子元素的 fixed 定位是否不再相对视口。

XHTML

1
2ag环亚国际手机客户端
3

最初的 CSS :

CSS

.container {
width:10vw;
height: 10vw;
background: rgba(255, 100, 100, .8);
}

.fixed {
position: fixed;
top: 1vw;
left: 1vw;
right: 1vw;
bottom: 1vw;
background: rgba(100, 100, 255, .8);
}
1
2
3
4
5
6ag环亚国际手机客户端
7
8
9
10
11
12
13
14
.container {
width:10vw;
height: 10vw;
background: rgba(255, 100, 100, .8);
}

.fixed {
position: fixed;
top: 1vw;
left: 1vw;
right: 1vw;
bottom: 1vw;
background: rgba(100, 100, 255, .8);
}
一探 position:fixed 失效的最终原因

通过上面的试验,在最新的 Blink 内核下,发现并不是所有能够生成层叠上下文的元素都会使得 position:fixed 失效,但也不止 transform 会使 position:fixed 失效。

所以,MDN 关于 position:fixed 的补充描述不够完善。下述 3 种方式目前都会使得 position:fixed 定位的基准元素改变(本文重点):

transform 属性值不为 none 的元素
perspective 值不为 none 的元素
在 will-change 中指定了任意 CSS 属性
不同内核的不同表现

完了吗?没有!我们再看看其他内核下的表现。
image

上面也谈到了,上述结论是在最新的 Chrome 浏览器下(Blink内核),经过测试发现,在 MAC 下的 Safari 浏览器(WebKit内核,Version 9.1.2 (11601.7.7))和 IE Trident/ 内核及 Edge 浏览器下,上述三种方式都不会改变 position: fixed 的表现!

所以,当遇到 position: fixed 定位基准元素改变的时候,需要具体问题具体分析,多尝试一下,根据需要兼容适配的浏览器作出调整,不能一概而论。

position:fixed 的其他问题

当然,position: fixed 在移动端实现头部、底部模块定位。或者是在 position: fixed 中使用了 input 也会存在一些问题,这个有很多文章都描述过并且存在很多解决方案,本文不讨论这块问题。

这方面的问题,可以看看这篇文章:移动端web页面使用position:fixed问题总结

最后

系列 CSS 文章汇总在我的 Github ,持续更新,欢迎点个 star 订阅收藏。

好了,本文到此结束,希望对你有帮助 🙂

如果还有什么疑问或者建议,可以多多交流,原创文章,文笔有限,才疏学浅,文中若有不正之处,万望告知。

如果有人让你推荐前端技术书,请让他看这个列表 ->《经典前端技术书籍》

二、什么是环亚娱乐ag88登录?

一、什么是结构化数据工具?

二、什么是环亚娱乐ag88登录?

三、目前已开放哪些数据格式提交?

四、提交的结构化数据都会展现结构化摘要吗?

五、创建Sitemap时有哪些注意事项?

一、什么是结构化数据工具?

结构化数据工具是百度引入优质结构化数据的入口,现在互联网中的资源类型越来越多,内容越来越丰富,为了给用户展示更丰富的搜索结果,同时给予网站内容更合适的展现,提高搜索结果的点击率,我们推出了结构化数据工具。

二、什么是开放数据格式提交?

有sitemap提交权限的站长,可以根据自己网站类型,选择相应类目的数据格式,向百度提交网站内容的结构化数据。

三、目前已开放哪些格式?

已支持四类结构化数据提交:通用问答、在线文档、资料下载、软件下载,后续会开放更多类别。

1、通用问答,适合有问答类页面的网站提交数据,展现样式:

rdf_questionpost.png

2、在线文档,适合有文档在线阅读页的网站提交数据,展现样式:

rdf_onlinedocument.png

3、资料下载,适合有资料下载页的网站提交数据,展现样式:

rdf_filedownloadpage.png

4、软件下载,适合有软件下载页的网站提交数据,展现样式:

rdf_softwareapplication.png

四、提交的结构化数据都会展现结构化摘要吗?

百度对已提交的结构化数据,不保证一定会展现。展现结构化摘要的条件包括但不限于:

1、结构化字段表述准确,符合规范。

2、结构化字段内容与页面相应内容一致。

3、页面内容质量高,如问答页,答案需有助于提问者解决疑问。

4、url已被百度收录。

六、创建Sitemap文件时有哪些注意事项?

见sitemap工具帮助

娃娃姐你好,我94年,165,41kg,A,国外硕

关键词
纯布男

娃娃姐你好,我94年,165,41kg,A,国外硕,京籍;男友97年,183,85kg,国内大四在读,皖籍。均非处。家庭条件比男友好。我和他是本科在某一线城市C上学认识的。男友有时候对我很好肯给我所有社交网站密码(虽然发现了一些暧昧聊天,不过没有越线),对我也越来越包容。但是我马上硕士毕业他每天给我施压要我回C城市工作,而我爸爸认为在北京最适合发展且能为我提供很多资源,我家里也有老人很想陪伴。劝说男友毕业来京工作,他说他死也不去北京,不想住我家房子。我说那我们可以租房子啊。他说他去睡觉了。另外男友经常嫌弃我不是处,而且吵架的时候说你这种三手货除了我谁那么宝贝你?请问娃娃姐是我在某方面高攀了吗?为什么感觉主动权一直在他手里?自觉条件还可以,为什么会出现找的男朋友一个不如一个的情况?谢谢娃娃姐。

虽然我并非女权斗士,但是我个人非常反感“三手货”这样侮辱女性的词汇。你的男友chu女情结如此严重,还会对你进行言语羞辱,长相上又比同龄人更加成熟,毕业以后坚决回家,且不愿意住进你家里准备的房子,以上种种证据表明,他就是一个百年老字号绝对正宗纯布男。

纯布男由于自己基因不佳,空有雄竞本领,所以自身PU极高。他们的择偶策略就是:找一个低MV低PU的女性作为da房进入婚姻,婚后再找多个高MV高PU女性实行多偶策略。这样的男生并不值得你努力留住他,所以讨论是否高攀毫无意义。

鉴于你找到的男友一个不如一个,我建议你把我的书先全部看一遍。如果你想要提高自己的眼光,在未来的择偶中屏蔽掉各种混进来的奇怪的东西。至少得能够区分剪子男石头男和布男,且掌握辨别长择和短择的方法。

另外,需要提醒你的一点是,家庭条件和婚房户口都是你的原生家庭给你的礼物,并不属于你自身雌性竞争的优势,所以千万注意不要自视甚高。同时你需要大幅度提高自己的MV,否则极有可能会遇到贪图你家庭条件或者短择你的对象。

你可能还会想看:

谢邀。结合连续创业者、 环亚娱乐ag88登录 

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

谢邀。结合连续创业者、 环亚娱乐ag88登录  唱吧app创始人陈华的演讲,整理出这篇文章,供大家参考。

在全球的App Store的各个类目免费榜前20的产品中,挑选具有以下特征的产品:

1、目标市场规模巨大,例如会有几千万、几亿人使用;

2、该方向的目标市场(例如中国大陆)尚未有巨头;

3、在这个方向上,团队能做出令人耳目一新的产品形态,超越已有产品。

比如:

(1)强工具(只是第一步,容易被巨头赶超):团队有能力使得产品更能满足新一代用户的需求,比如“爱美、怕死、缺爱”的“爱美”需求,美图秀秀app、有声音美化功能的唱吧app、有画面美化功能的主播专用摄像头,都很好地进行了需求满足;

(2)强社交(产品可持续性的关键):市面上的产品被当作工具使用,而团队有能力将工具做成有黏性的社交产品,比如添加攀比功能(机器对比+人工打榜)、即时通讯功能、朋友圈互评功能、陌生人路转粉功能;

4、产品自身有口碑传播能力,即用户愿意推荐给身边的朋友使用;

5、商业模式上,团队有2B或2C的收费能力;

罗列出挑选的方向,有新的想法就添加进列表,每周都进行讨论,筛掉不合适的方向,几周下来,一直停留在清单上的方向,值得去尝试。

世界上有一些痛点,已经被人家挖掘出来,但是又没有挖掘那么深,那就抓住这个痛点,加入这个年代的投资创业大潮。

——————————–