陈映平 于 5个月前发表 3417 3 3
写在前面 作为一个互联网前端老鸟,这么些年下来,做过的项目也不少。从最初的 我的QQ中心 、 QQ圈子 ,到后面的 QQ群项目 、 腾讯课堂 。从几个人的项目,到近百号人的项目都经历过。 这期间,实现了很多的产品需求,也积累了一些经验。这里稍作总结,希望能给新入行的前端小伙伴们一些参考。 做好需求的关键点 要说如何做好一个需求,展开来讲,可以写好几篇文章,这里只挑重点来讲。 最基本的,就是把握好 3W :what、when、how。 * what :做什么? * when :完成时间? * how :如何完成? 需求场景假设 为了下文不至于太过枯燥,这里进行需求场景的模拟,下文主要围绕这个“需求”,从what、when、how 三个点展开来讲。 假设现在有个论坛的项目,产品经理小C提了个需求 “给论坛增加评论功能” 。作为 前端工程师 的小A接到需求后,该如何高质量的完成这个需求。 * 项目名称:兴趣论坛。 * 项目组主要成员:前端工程师小A,后台工程师小B,产品经理小C。 * 产品需求:给论坛增加评论功能。 备注:此时我们脑海里浮现的应该是下面这张图。
5个月前
开发模式
结一 于 6个月前发表 3942 0 0
一般来说,活动宣传页都是全屏的滑动,而移动端的视窗大小确实是有点零碎化,于是将内容在不同的手机上良好展示出现就显得有点挑战了。本文旨在通过对一个个疑难点进行攻克而形成一种通用解决方案。 活动宣传页面分析 以imweb conf的第一屏为例,如下图: imweb conf [http://7tszky.com1.z0.glb.clouddn.com/FkJN6E_oX78eQ80tFFcIFqvD9u4Z] 现在对里面的元素布局进行一个分析: * 一个全屏的背景图 * ”往届回顾“定位在左上(left, top),IMWeb.io 文字及向上箭头定位为中下(center bottom) * 发光的地球水平铺满,垂直方向定位为bottom * 中间的其他内容定位参考就是中间了 * 内容一屏显示,不论手机的宽高如何变化
6个月前
移动开发
江源 ,非常让人头疼…… 于 6个月前发表 4501 2 1
原文 [http://jiangyuan.me/blog/2016/09/24/vscode/] 这是《小江品评编辑器》系列的开篇,当然想开个好头。 我 2012 年开始接触前端,从最开始的记事本,到 Dreamweaver ,到 notepad++ ,到风头一时无两的 Sublime Text ,到现在社区庞大的 Atom ,都使用过很长一段时间。 期间也抽空玩耍过 Vim 、 Emac 和 Brackets 等等,觉得智商不够浅尝辄止。 当然也不会放过 IDE , Eclispe 、 NetBeans 、 Aptana 都试过,现在专注 jetbrains 三十年、 Webstorm 脑残粉……别胡思乱想了,我买了 license 。 扯这么多就是为了证明, 品评编辑器 ,我还真有这个资格。 今天要说的编辑器不是 Sublime ,她很棒,但更新太缓慢,在这个各种技术井喷的时代,再不奋起直追,只会被淘汰。 也不是 Atom ,他一样棒,意外的是启动时间要一个世纪。 Webstorm 当然是压轴登场。 今天聊聊 VS Code ,上镇楼图!
6个月前
工具建设
韩小莹 于 12小时前发表 20 0 0
由于安装MySQL的时候,疏忽没有选择底层编码方式,采用默认的ASCII的编码格式,于是接二连三的中文转换问题随之而来,就想卸载了重新安装MYSQL,这一卸载倒是出了问题,导致安装的时候安装不上,在网上找了一个多小时也没解决。 重装系统永远是个好办法,但有谁喜欢这么做呀:( 后来无意发现是卸载的时候没有卸载完全导致,下面给出完整的卸载MySQL 5.1的卸载方法: 1、控制面板里的增加删除程序内进行删除 2、删除MySQL文件夹下的my.ini文件,如果备份好,可以直接将文件夹全部删除 3、开始->运行-> regedit 看看注册表里这几个地方删除没有 HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Eventlog\Application\MySQL 目录删除 HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\Eventlog\Application\MySQL 目录删除
12小时前
基础库
韩小莹 于 1天前发表 30 0 0
如ZendOptimizer的默认安装目录为C:\Program Files\Zend,我们需要给Zend这个目录添加一个IIS的启动账户IIS_WPG的读取运行,列出目录,读取的权限。这样就能解决因权限导致的Unable to view file mapping错误。 以上内容转自江苏3A网络
1天前
基础库
苍都 于 1天前发表 67 0 0
学习一个框架有两个阶段最难,一个是初期的入门,一个是后期的源码阅读。 虽然vue的官方文档非常棒,在我读完文档之后还是会有一种感觉,知识点我都懂,然后呢?似乎大体知道该怎么利用vue全家桶去搭建一个项目,但具体下笔又有点模糊。vue官方的脚手架并没有将vue-router和vuex包括进去,所以我们需要自己去配置它们。虽然找了一堆的demo,但是都没有达到我想要的效果。正好趁着自己接了一个小项目,拿来练手。 这个项目主要的作用是熟悉 vue vue-router vuex 在初期搭建项目的时候该怎么配置,以及怎么去互相配合,xx.vue文件该怎么写,如何创建和使用组件,vuex的state,mutations,actions,getters怎么配合,形成一个完整的流程。 项目并不复杂,所以拿出来分享,希望对大家有帮助 源码地址: https://github.com/bailicangdu/vue2-happyfri [https://github.com/bailicangdu/vue2-happyfri] 路由配置 import App from'../App'
1天前
前端库
黄龙 于 2天前发表 52 0 0
故事是这样开始的 * 产品K: 为什么我们的网站不能显示火星文? * 开发L: 什么样的火星文? * 产品K: ྊ你̆ូ们̆ូ城̆ូ里̆ូ人̆ូ真̆ូ会̆ូ玩̆ូ 类似这样的 * 开发L: 这是啥,看不清啊。 * 产品K: 我给你截图 [http://7tszky.com1.z0.glb.clouddn.com/FliL8ZoMB51VPZqheUpU-BNx4Aac] * 产品K: 你看知乎上是显示正常的 * 开发L: 哦,那我看看 作为一个技术很一般的前端很快发现这个和知乎的 font-family 的设置有关系,因为它设置了 PingFang SC 字体。作为一个喜欢问问题的前端那就要问 问题一:为什么其它字体显示就不正常PingFang SC字体就可以呢? 这̀是̀什̀么̀鬼̀(这是什么鬼?) uinicode里面叫结合附加符号 https://unicode-table.com/cn/blocks/combining-diacritical-marks/
2天前
javascript技术
韩小莹 于 2天前发表 40 0 0
正常sql server是向下兼容,不过sql server2005的数据却也是可以导入到sql server 2000的。 需要本地同时安装两个数据库,在2005数据库中,右击需要备份还原的数据库,任务--生成脚本,会出来脚本向导,勾选"为所选数据库中的所有对象编写脚本",在接下来的"选择脚本选项"中, 找到"为服务器版本编写脚本"项, 选择"SQL Server 2000"[http://7tszky.com1.z0.glb.clouddn.com/FvCMClfhr8YzJ_lBMCNxg4-pxR7L] 最后把脚本保存到一个.sql 脚本文件,路径和文件件自己设置。 接下来,连接SQL Server 2000,选择导入的数据库,打开查询分析器,执行上面生成的脚本.sql文件中的代码(当然代码中的数据库名用户名是需要修改的),以创建一个新的数据库,这里仅仅是创建了数据库表的结构而已,还没有数据。
2天前
基础库
何泽 于 2天前发表 84 0 0
ThreadLocal(线程变量副本) Synchronized实现内存共享,ThreadLocal为每个线程维护一个本地变量。 采用空间换时间,它用于线程间的数据隔离,为每一个使用该变量的线程提供一个副本,每个线程都可以独立地改变自己的副本,而不会和其他线程的副本冲突。 ThreadLocal类中维护一个Map,用于存储每一个线程的变量副本,Map中元素的键为线程对象,而值为对应线程的变量副本。 ThreadLocal在Spring中发挥着巨大的作用,在管理Request作用域中的Bean、事务管理、任务调度、AOP等模块都出现了它的身影。 Spring中绝大部分Bean都可以声明成Singleton作用域,采用ThreadLocal进行封装,因此有状态的Bean就能够以singleton的方式在多线程中正常工作了。 Java内存模型: Java虚拟机规范中将Java运行时数据分为六种。
2天前
前端库
韩小莹 于 3天前发表 46 0 0
卸载apache 查看安装的apache版本 如通常是通过rpm包安装的话直接用下面的命令: rpm -q httpd 也可以使用如下两种方法 httpd -v apachectl -v 如果linux自动安装的APACHE的话,直接使用apachectl -v命令,如果告诉你没有这个方法就可以知道系统没有安装apache,如果已经安装了则显示apache的版本,至于安装目录,使用 apachectl -c命令查看 查看到路径后直接使用删除命令 路径即可如下: rm -rf /usr/local/apache 运行 查看服务命令 netstat -tlunp 发现80端口被nginx占用 [root@localhost ~]# netstat -tlunp Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1769/nginx
3天前
基础库
韩小莹 于 4天前发表 56 0 0
502 Bad Gateway 一般是php-cgi进程执行超时,导致php页面无法解析。 1:一般比较常见的是用户restart系统后,php-fpm没有启动,直接/etc/init.d/php-fpm start即可。 2:Wdcp由于是apache来解析php,在apache没有启动,也会报502错误,启动apache即可。 3:运行过程中502报错,重启后恢复。 此种多数是在程序在某些特定的情况出现异常导致php-cgi假死,从而内存等资源耗尽。 (1):调整下nginx的缓冲区,一般设置为 fastcgi_buffers 8 16k; fastcgi_buffer_size 32k; (2): php-fpm.conf的max_children参数 max_children主要是设置php-cgi的进程数,一般一个php进程消耗在20-30M左右,在遇到某些程序偶然消耗大内存时会导致phh进程卡住。 适主机硬件资源进行合理调整,不用调整较高或者较低。 一般在php-fpm.conf调整在10个左右即可。小内存主机可以适当调低。
4天前
基础库
韩小莹 于 5天前发表 72 0 0
配置IP方式有两种: 1、通过命令直接配置 sudo ifconfig eth0 IP地址 netmask 子网掩码------配置IP地址 sudo route add default gw 网关------------添加默认路由 vi /etc/resolv.conf 配置文件 添加nameserver DNS----配置DNS sudo /etc/init.d/networking restart-----------重启网卡配置 但是方式只能临时修改,当服务器重启后,配置信息丢失;第二种方式直接修改配置文件,重启服务器后配置信息不会丢失; 2、直接修改配置文件 Ubuntu 系统配置文件在:/etc/network/interfaces 编辑配置文件:sudo vi /etc/network/interfaces 并用下面的行来替换有关eth0的行: THE PRIMARY NETWORK INTERFACE auto eth0 iface eth0 inet static address IP地址 gateway 网关 netmask 子网掩码
5天前
基础库