注册
环信即时通讯云

环信即时通讯云

单聊、群聊、聊天室...
环信开发文档

环信开发文档

环信FAQ

环信FAQ

集成常见问题及答案
RTE开发者社区

RTE开发者社区

汇聚音视频领域技术干货,分享行业资讯
技术讨论区

技术讨论区

技术交流、答疑
资源下载

资源下载

收集了海量宝藏开发资源
iOS Library

iOS Library

不需要辛辛苦苦的去找轮子, 这里都有
Android Library

Android Library

不需要辛辛苦苦的去找轮子, 这里都有
0
评论

React下一代状态管理库——recoil 前端面试 react

马师傅 发表了文章 • 2445 次浏览 • 2021-09-15 23:35 • 来自相关话题

引言 对于react状态管理库,大家比较熟悉的可能是Redux,但是redux虽然设计得比较简洁,但是他却有一些问题,比如需要写大量的模板代码;需要约定新的状态对象是全新的,如果我们不用全新的对象,可能会导致不更新,这是常见的redux状态不更新问题,所以需要... ...查看全部
0
评论

css做‘展开收起’功能,借鉴大佬思路 前端面试 CSS3

马师傅 发表了文章 • 1664 次浏览 • 2021-09-15 23:28 • 来自相关话题

开局一张图 上图所示,多行文本的展开收起是一个很常见的交互效果。 实现这一类布局和交互难点主要一下几点: 位于多行文本右下角的“展开收起”按钮 “展开”和“收起”两种状态的切换 当文本不超过指定行数时,不显示“展开收起”按钮 在此之前,单独看这个布局,即... ...查看全部
0
评论

浅谈前端的状态管理 性能优化 前端面试

马师傅 发表了文章 • 983 次浏览 • 2021-09-15 23:19 • 来自相关话题

前言 提到状态管理大家可能马上就想到:Vuex、Redux、Flux、Mobx等等方案。其实不然,不论哪种方案只要内容一多起来似乎都是令人头疼的问题,也许你有适合自己的解决方案又或者简单的注释和区分模块,今天来聊一聊前端的状态管理,如果你有好的建议或问题欢迎在... ...查看全部
0
评论

关注 ? ? ? 前端仔也需要懂的nginx内容 Nginx Javascript 前端面试

马师傅 发表了文章 • 905 次浏览 • 2021-09-15 23:11 • 来自相关话题

tips 如果你已经使用过nginx的,可以跳过介绍,直接看nginx配置文件和使用场景,如果你想全局熟悉下nginx,就耐心慢慢看看,在文章结尾会补上nginx的一些常用实战场景 前言 作为一名前端,我们除了node作为服务以外,我们还有什么选择,那么简单容... ...查看全部
0
评论

从零开发一款轻量级滑动验证码插件 Javascript

马师傅 发表了文章 • 1400 次浏览 • 2021-09-15 23:08 • 来自相关话题

效果演示 滑动验证组件基本使用和技术实现 上图是实现的滑动验证组件的一个效果演示,当然还有很多配置项可以选择,以便支持更多 定制化 的场景。接下来我先介绍一下如何安装和使用这款验证码插件,让大家有一个直观的体验,然后我会详细介绍一下滑动验证码的实现思路,如果... ...查看全部
0
评论

精益求精!记一次业务代码的优化探索 Javascript 性能优化

马师傅 发表了文章 • 912 次浏览 • 2021-09-13 18:41 • 来自相关话题

关键词:需求实现、设计模式、策略模式、程序员成长 承启: 本篇从业务场景出发,介绍了面对一个复杂需求,拆解重难点、编码实现需求、优化代码、思考个人成长的过程。 会介绍一个运用策略模式的实战。 需求和编码本身小于打怪升级成长路径。 文中代码为伪代码。 场景... ...查看全部
0
评论

使用CSS实现中秋民风民俗-拜月 CSS3

马师傅 发表了文章 • 1049 次浏览 • 2021-09-13 18:37 • 来自相关话题

前言 好像有些粗糙,哈哈哈哈。图片是网络的,我用我浅薄的Photoshop知识做了简单的处理。 看了一圈,感觉大家都好🐂 🍺,有做日地月公转的,有做月全食的,有做日落月出的,等等。可谓是八仙过海,各显神通,通览下来真是“精彩”渐欲迷人眼,但是好像没有做拜月的... ...查看全部
0
评论

一顿操作,我把 Table 组件性能提升了十倍 vue 性能优化

马师傅 发表了文章 • 1266 次浏览 • 2021-09-13 18:35 • 来自相关话题

背景 Table 表格组件在 Web 开发中的应用随处可见,不过当表格数据量大后,伴随而来的是性能问题:渲染的 DOM 太多,渲染和交互都会有一定程度的卡顿。 通常,我们有两种优化表格的方式:一种是分页,另一种是虚拟滚动。这两种方式的优化思路都是减少 DOM ... ...查看全部
0
评论

vue3+typescript 实现一个中秋RPG游戏 CSS3 vue

马师傅 发表了文章 • 1202 次浏览 • 2021-09-13 18:30 • 来自相关话题

前言 又到了周末时光,在家闲着没事,花了两天时间去构思并制作一个中秋节相关的页面,首先技术栈接地气并且跟的上目前的新技术,所以我考虑使用Vue3+Typescript,其次是中秋主题,我想到的是嫦娥奔月的故事,既然是嫦娥奔月的话,那么页面就得有趣味性和游戏性.... ...查看全部
0
评论

一文彻底搞懂js中的位置计算 前端面试

马师傅 发表了文章 • 858 次浏览 • 2021-09-13 00:00 • 来自相关话题

引言 文章中涉及到的api列表:scroll相关Apiclient相关Apioffset相关ApiElement.getBoundingClientRectAPiWindow.getComputedStyleApi 我们会结合api定义,知名开源库中的应用场... ...查看全部
0
评论

面试贼坑的十道js面试题(我只会最后一题) Javascript 前端面试

马师傅 发表了文章 • 985 次浏览 • 2021-09-12 23:57 • 来自相关话题

前言 现在前端面试经常遇到奇葩的题,有的听都没听过,何谈能答对,这些是小伙伴们投稿的题,大家来看看,出这些题的人,都优秀到不行啊,想要拿到满意的offer,不得不卷啊,头疼一批 typeof null 为什么是object null就出了一个 bug。... ...查看全部
0
评论

for 循环不是目的,map 映射更有意义!【FP探究】 Javascript

马师傅 发表了文章 • 884 次浏览 • 2021-09-12 23:55 • 来自相关话题

楔子 在 JavaScript 中,由于 Function 本质也是对象(这与 Haskell 中【函数的本质是值】思路一致),所以我们可以把 Function 作为参数来进行传递! 例🌰: function sayHi() { console.log("... ...查看全部
0
评论

用canvas实现一个大气球送给你 CSS3

马师傅 发表了文章 • 866 次浏览 • 2021-09-12 23:52 • 来自相关话题

一、背景 近期在做一个气球挂件的特效需求,值此契机,来跟大家分享一下如何利用canvas以及对应的数学知识构造一个栩栩如生的气球。 二、实现 在实现这个看似是圆鼓鼓的气球之前,先了解一下其实现思路,主要分为以下几个部分: 实现球体部分; 实现气球口... ...查看全部
0
评论

通过一个例子学习css层叠上下文 CSS3

马师傅 发表了文章 • 1049 次浏览 • 2021-09-12 23:49 • 来自相关话题

层叠上下文 & 层叠等级 & 层叠规则 http://www.w3.org/TR/CSS22/vi… The order in which the rendering tree is painted onto the canvas is d... ...查看全部
0
评论

【中秋】纯CSS实现日地月的公转 CSS3

马师傅 发表了文章 • 971 次浏览 • 2021-09-12 23:46 • 来自相关话题

我们都知道中秋的月亮又大又圆,是因为太阳地球月亮在公转过程中处在了一条直线上,地球在中间,太阳和月球分别在地球的两端,这天的月相便是满月。这段可以略过,是为了跟中秋扯上关系。 但因为我根本没咋学过前端,这两天恶补了一下重学了 flexbox 和 grid ,成... ...查看全部
0
评论

6年的老项目迁移vite2,提速几十倍,真香 vite2 性能优化

马师傅 发表了文章 • 2457 次浏览 • 2021-09-09 00:53 • 来自相关话题

背景 gou系统又老又大又乱,每一次的需求开发都极其难受,启动30|40几秒勉强能接受吧,毕竟一天也就这么一回,但是HMR更新也要好几秒实在是忍不了,看到了vite2就看到了曙光!盘它 先看看vue-cli3的启动编译吧... 该项目为内部运营管理系统... ...查看全部
0
评论

50行代码串行Promise,koa洋葱模型原来是这么实现? Javascript 前端面试

马师傅 发表了文章 • 983 次浏览 • 2021-09-09 00:51 • 来自相关话题

1. 前言 写相对很难的源码,耗费了自己的时间和精力,也没收获多少阅读点赞,其实是一件挺受打击的事情。从阅读量和读者受益方面来看,不能促进作者持续输出文章。 所以转变思路,写一些相对通俗易懂的文章。其实源码也不是想象的那么难,至少有很多看得懂。 之前写过 ko... ...查看全部
0
评论

这是一个被面烂的面试题——简述 JavaScript 的事件捕获和事件冒泡 Javascript 前端面试

马师傅 发表了文章 • 1165 次浏览 • 2021-09-09 00:47 • 来自相关话题

JavaScript 事件冒泡是为了捕捉和处理 DOM 内部传播的事件。但是你知道事件冒泡和事件捕获之间的区别吗? 在这篇文章中,我将用相关的示例来讨论关于这个主题你所需要了解的全部情况。 事件流的传播 在介绍事件捕获和事件冒泡之前,先来看下一个事件是如何在 ... ...查看全部
0
评论

几个简单的小例子手把手带你入门webgl Javascript webgl

马师傅 发表了文章 • 999 次浏览 • 2021-09-09 00:10 • 来自相关话题

各位同学们大家好,又到了周末写文章的时间,之前群里有粉丝提问, 就是shader不是很理解。 然后今天他就来了, 废话不多说,读完今天的这篇文章你可以学到以下几点: 为什么需要有shader ? shader的作用是什么???? shader 中的每个参数到... ...查看全部
0
评论

完美解决macOS Homebrew安装JDK的一些问题 reactnative

马师傅 发表了文章 • 3777 次浏览 • 2021-09-08 14:28 • 来自相关话题

自从Oracle接手JDK之后,更新变快了,之前的“旧版本”也不容易下载了。最近一段时间Oracle一直不安生, 搞出来一堆幺蛾子, 所以安装方式也一直在变, 之前的方法已经不能用了, 网上找各种办法都不好使,下面针对各个版本给出了不同建议, 安装结束后, 可... ...查看全部
0
评论

如何将react-native的style样式转换成css样式 reactnative

马师傅 发表了文章 • 1118 次浏览 • 2021-09-07 23:38 • 来自相关话题

背景: 我们总是倾向于一套代码走天下,正所谓一招鲜,吃遍天。刚接触RN项目的时候,常常为RN style样式的写法而头痛,等到熟悉了RN样式写法时,一个web端项目从天而降,于是,你又不得不操练起日渐陌生的css写法。更过分的是,有时你还得在RN样式和css样... ...查看全部
0
评论

聊聊 RN 中 Android 提供 View 的那些坑 reactnative

马师傅 发表了文章 • 1202 次浏览 • 2021-09-07 23:16 • 来自相关话题

最近笔者研究 Android 中使用自定义 View 提供原生组件给 React Native(下面统一写成 RN ) 端的时候,遇到一些实际问题,在这里从 RN 的一些... ...查看全部
1
回复

url图片消息发送成功后接收者怎么处理消息,获取原图 消息

smysmy 回复了问题 • 2 人关注 • 903 次浏览 • 2021-09-06 14:48 • 来自相关话题

0
评论

巧用CSS filter,让你的网站更加酷炫! CSS3

马师傅 发表了文章 • 896 次浏览 • 2021-09-06 10:26 • 来自相关话题

前言 我们在处理图片时,经常使用的一个功能就是滤镜,它能使一张图像呈现各种不同的视觉效果。 在 CSS 中,也有一个filter属性,让我们能用 CSS 代码为元素指定各种滤镜效果,比如模糊、灰度、明暗度、颜色偏移等。 CSS filter的基础使用非常简单... ...查看全部
0
评论

用 JavaScript 做数独 Javascript

马师傅 发表了文章 • 825 次浏览 • 2021-09-06 10:04 • 来自相关话题

最近看到老婆天天在手机上玩数独,突然想起 N 年前刷 LeetCode 的时候,有个类似的算法题(37.解数独),是不是可以把这个算法进行可视化。 说干就干,经过一个小时的实践,最终效果如下: 怎么解数独 解数独之前,我们先了解一下数独的规则: 数字 1-... ...查看全部
1
回复

uniapp如何设置到主屏幕显示 平板的 环信_WebIM uniapp

五彩斑斓的黑 回复了问题 • 2 人关注 • 931 次浏览 • 2021-09-01 12:20 • 来自相关话题

0
评论

JS中this的指向原理 Javascript 前端面试

马师傅 发表了文章 • 800 次浏览 • 2021-08-31 18:04 • 来自相关话题

前言 在JS中,每个函数的 this 是在调用时被绑定的,完全取决于函数的调用位置(也就是函数的调用方法)。与声明的位置无关。 调用位置 理解调用位置:调用位置就是函数在执行时被调用的位置(而不是声明的位置)。 要找到函数的调用位置,最重要是找到函数的调用... ...查看全部
0
评论

一道看似简单的阿里前端算法题 算法 前端面试

马师傅 发表了文章 • 903 次浏览 • 2021-08-31 17:57 • 来自相关话题

题目描述 题目分析 我们以下面这个数组为例,我们首先要明白题目中的第2大的元素指的是4,第3大的元素指的是3,也就是说指的是去重后的数组中的排序。我们之所以要建立一个哈希表是因为我们需要知道第k大和第m大的元素总共出现了几次,因为最后需要进行求和。 [1... ...查看全部
0
评论

cookie和session、localStorage和sessionStorage、IndexedDB、JWT汇总 前端面试

马师傅 发表了文章 • 977 次浏览 • 2021-08-31 17:54 • 来自相关话题

cookie和session HTTP协议是一种无状态协议,即每次服务端接收到客户端的请求时,都是一个全新的请求,服务器并不知道客户端的历史请求记录;Session和Cookie的主要目的就是为了弥补HTTP的无状态特性。 cookie是什么? cookie是... ...查看全部
0
评论

Flutter 系列 - 环境搭建 Flutter

马师傅 发表了文章 • 879 次浏览 • 2021-08-31 10:40 • 来自相关话题

Flutter 作为火热的跨端工具包,在 github 上超过 120k 的关注量,可见一斑。 基于目前本人正在学习 Flutter 的路上,会将整个学习的过程记录下来。 本博文主要讲解环境的搭建,先把项目搭建好,跑通 demo 才有玩下去的必要和成就感,你说... ...查看全部
0
评论

面试官问:我们聊聊原型和继承?我:这里边水深,我把握不住。。。 前端面试

马师傅 发表了文章 • 971 次浏览 • 2021-08-30 23:46 • 来自相关话题

前言 原型和继承一直是js中非常基础和重要的部分,我们来看看日常开发中经常会用到的原型和继承。 class Person extends React.Component { componentDidMount() {} render() {... ...查看全部
0
评论

二进制都不了解?也配做什么程序员??? 前端面试

马师傅 发表了文章 • 934 次浏览 • 2021-08-30 23:38 • 来自相关话题

最近在学习一些计算机专业课,学习的过程中二进制的基础是必须要有的,不管是计算机网络,还是组成原理,还是操作系统,都是以二进制为基础的,所以本文总结一些二进制基础。今天,2021年8月30日,写下第一版,后面会陆续增加一些内容,增加一些应用便于更多人理解。 本文... ...查看全部
0
评论

一个"剑气"加载?️ CSS3

马师傅 发表了文章 • 842 次浏览 • 2021-08-30 23:35 • 来自相关话题

🙇 前言 我们在网页加载的时候总会加上一些过渡效果来引导用户,减少白屏时间,而加载的效果可以用svg也可以使用一些我们封装好的组件,今天就来分享一种"剑气"加载效果。 相信大家看封面都知道效果了,那我们就直接开干吧。 🏋️‍♂️ToDoList 剑气... ...查看全部
0
评论

学会这个,我的http加载速度更快了! 性能优化

马师傅 发表了文章 • 835 次浏览 • 2021-08-30 16:06 • 来自相关话题

1. 前言 说到 HTTP 怎么提升网络加载速度,就不得不聊一聊 HTTP/2 了。 HTTP/2 的主要目标是通过支持完整的请求与响应复用来减少延迟,通过有效压缩 HTTP 标头字段将协议开销降至最低,同时增加对请求优先级和服务器推送的支持。 HTTP/2 ... ...查看全部
0
评论

我是如何用这3个小工具,助力小姐姐提升100%开发效率的 性能优化

马师傅 发表了文章 • 1350 次浏览 • 2021-08-30 13:23 • 来自相关话题

前言 简单的知识点搭配合适的业务场景,往往能起到意想不到的效果。这篇文章会用三个最基础人人都知道的前端知识来说明如何助力运营小姐姐、公司48+前端开发同学的日常工作,让他们的工作效率得到极大地提升。 看完您可以会收获:用vue从零开始写一个chrome插件&n... ...查看全部
0
评论

跨浏览器窗口通讯 ,7种方式,你还知道几种呢? 浏览器兼容性

马师傅 发表了文章 • 1074 次浏览 • 2021-08-30 13:19 • 来自相关话题

前言 为什么会扯到这个话题,最初是源于听 y.qq.com/ QQ音乐, 播放器处于单独的一个页面 当你在另外的一个页面搜索到你满意的歌曲的时候,点击播放或添加到播放队列 你会发现,播放器页面做出了响应的响应 这里我又联想到了商城的购物车的场景,体验确实有... ...查看全部
0
评论

更新需要提示用户,需要控制应用是否更新 Electron 实践

马师傅 发表了文章 • 1176 次浏览 • 2021-08-30 13:16 • 来自相关话题

更新需要提示用户,需要控制应用是否更新1. 方案一在检测到更新后提示用户,让用户选择更新。设置autoDownload参数为false,让应用检测到更新不自动下载,改成手动下载更新包。通过在钩子update-available中,加入对话框提示用户,让用户选择... ...查看全部
0
评论

JS数字之旅——Number Javascript

马师傅 发表了文章 • 1033 次浏览 • 2021-08-29 22:37 • 来自相关话题

首先来一段神奇的数字比较的代码 23333333333333333 === 23333333333333332 // output: true 233333333333333330000000000 === 23333333333333333999999999... ...查看全部
0
评论

前端动画lottie-web 动画效果 CSS3

马师傅 发表了文章 • 1056 次浏览 • 2021-08-28 23:58 • 来自相关话题

lottie是一个跨平台的动画库,通过AE(After Effects)制作动画,再通过AE插件Bodymovin导出Json文件,最终各个终端解析这个Json文件,还原动画。本文中我只介绍前端用到的库lottie-web。 对比三种常规的制作动画方式 Pn... ...查看全部
0
评论

居然不知道CSS能做3D?天空盒子了解一下,颠覆想象? CSS3

马师傅 发表了文章 • 1589 次浏览 • 2021-08-28 23:56 • 来自相关话题

大家好,这次给大家换换口味,我们来点不一样的东西。请不要理解歪了🐶。 上周六和昊神的一聊,然后就有了这篇文章。 通过H5实现3D全景是挺平常的事情了,通过three.js可以很容易实现一个全景图。 可以这个链接来查看,three.js来实现的,戳👇thre... ...查看全部
0
评论

奇思妙想 CSS 3D 动画 | 仅使用 CSS 能制作出多惊艳的动画? CSS3 vue

马师傅 发表了文章 • 943 次浏览 • 2021-08-28 23:53 • 来自相关话题

本文将从比较多的方面详细阐述如何利用 CSS 3D 的特性,实现各类有趣、酷炫的动画效果。认真读完,你将会收获到: 了解 CSS 3D 的各种用途 激发你新的灵感,感受动画之美 对于提升 CSS 动画制作水平会有所帮助 CSS 3D 基础知识 本文默认读者... ...查看全部
0
评论

想了解到底啥是个Web Socket?猛戳这里!!! websocket

马师傅 发表了文章 • 1205 次浏览 • 2021-08-27 23:18 • 来自相关话题

什么是 Web Socket WebSocket 协议在2008年诞生,2011年成为国际标准,所有浏览器都已经支持了。其是基于TCP的一种新的网络协议,是 HTML5 开始提供的一种在单个TCP连接上进行全双工通讯的协议,它实现了浏览器与服务器全双工(ful... ...查看全部
0
评论

我写的页面打开才用了10秒,产品居然说我是腊鸡!!! 前端面试 性能优化

马师傅 发表了文章 • 1072 次浏览 • 2021-08-27 23:14 • 来自相关话题

背景 产品:你看看这页面加载的如此之慢,怎么会有用户用呢?(并甩给了我一个录屏) 我: (抛出前端应对之策)前端需要加载vue,js,html,css这些都需要时间呀,是不是,别说还需要接口请求,数据库查询,js执行,这些都需要时间是不是,所以加载慢很正常,... ...查看全部
0
评论

这里是一个让你为所欲为,欲罢不能的抽奖demo Javascript vue

马师傅 发表了文章 • 1376 次浏览 • 2021-08-27 23:08 • 来自相关话题

寒暄 抽奖系统有很多,各式各样的,不知道大伙都抽中过什么,还是像我这样经历了绝望,看破红尘,存起来留给下一代。 这种抽奖场景在活动中很常见,为了更好的摸鱼,决定自己去写一个插件来解决重复劳动。接下来为大伙介绍一个不错的宫格抽奖组件,请看官往下挪步 关于gri... ...查看全部
0
评论

vue、react函数式编程 react vue 性能优化

马师傅 发表了文章 • 826 次浏览 • 2021-08-27 23:04 • 来自相关话题

函数式编程 JavaScript 语言从一诞生,就具有函数式编程的烙印。它将函数作为一种独立的数据类型,与其他数据类型处于完全平等的地位。在 JavaScript 语言中,你可以采用面向对象编程,也可以采用函数式编程。有人甚至说,JavaScript 是有史以... ...查看全部
0
评论

深入理解 Class 和 extends 原理 前端面试 Javascript

马师傅 发表了文章 • 1243 次浏览 • 2021-08-27 23:01 • 来自相关话题

准备工作 在开始之前,我们需要一个 babel 的环境,方便查看 babel 后的代码,这里我推荐两种方式。chrome 插件 —— ScratchJS,可以设置 babel 来转换代码,通过点击 Toggle output 就能看到 babel 后的代码。b... ...查看全部
0
评论

一个"水"按钮(滑水的水) 前端面试 CSS3

马师傅 发表了文章 • 967 次浏览 • 2021-08-26 23:54 • 来自相关话题

🐳 前言 不知道大家平时有没有留意水滴落下的瞬间。 仔细去听,仔细去看,每一滴滴水珠落下泛起的涟漪都让人意向连篇。 一个个显现而消失的涟漪就像时光仿佛带走了什么,还是留下了什么,又似乎一切都没有变,却又感觉多了些什么,让人情不自禁想要点一个赞~~ 好了不开玩... ...查看全部
0
评论

【前端可视化】如何在React中优雅的使用ECharts react 前端面试

马师傅 发表了文章 • 2464 次浏览 • 2021-08-26 23:53 • 来自相关话题

这片文章由最近公司的一个可视化项目有感而发,随着前端的飞速发展,近年来数据可视化越来越火,有些公司的业务跟地图、位置、大数据等脱离不开关系,所以数据可视化甚至成了单独的一门前端行业,比如在杭州地区的前端可视化职位不但有一定的需求量且高薪, 至今为止,已经有很... ...查看全部
0
评论

DIff算法看不懂就一起来砍我(带图) 算法 前端面试

马师傅 发表了文章 • 904 次浏览 • 2021-08-26 23:49 • 来自相关话题

前言 面试官:"你了解虚拟DOM(Virtual DOM)跟Diff算法吗,请描述一下它们"; 我:"额,...鹅,那个",完了😰,突然智商不在线,没组织好语言没答好或者压根就答不出来; 所以这次我总结一下相关的知识点,让你可以有一个清晰的认知之余也会让你在今... ...查看全部
0
评论

产品经理说你能不能让词云动起来?我觉得配得上!!! 前端面试 CSS3 vue

马师傅 发表了文章 • 869 次浏览 • 2021-08-26 23:46 • 来自相关话题

☀️ 前言 事情是这样的,前段时间拿到公司的数据大屏原型图让我一天内把一整个页面做出来。 简单看了看,就是一个3840 * 1840的大屏然后几个列表几个图例看起来也没有多复杂。 唰!很快啊加了一会班把整个页面调整好了信心十足拿给产品经理看。 产品经理皱了皱... ...查看全部