首页
学习
活动
专区
工具
TVP
发布

jeremy的技术点滴

专栏成员
197
文章
471736
阅读量
58
订阅数
免编译在JSP中直接写react代码
最近参与了一个历时4-5年的项目,项目是一个后台管理系统,访问量并不高,但经常根据业务方的一些特殊需求,在原有代码添加功能。项目所采用的技术架构还十分老旧,后台采用Struts + Spring + Hibernate, 前台直接使用JSP, 辅以struts与jstl的一些标签。
jeremyxu
2019-03-13
3.5K0
利用promise实现简单的前端cache
今天在工作中遇到一个关于promise有趣的小问题,这里分享一下分析的过程。 原始版本 //这个方法模拟从服务端加载数据 var loadData = function(){ return fetch('/').then(function(data){ return data.statusText }); }; loadData().then(function(data){ console.log(data); }); 上面这一小段方法本也没什么错,但考虑如果使用数据的地方比较多,每
jeremyxu
2018-05-10
1.5K0
重新理解HTTP中的“持久连接”
Web页面优化中有一条很重要的规则说应在不影响代码可阅读性的前提下尽量减少请求数。以前一直以为过多的请求数会导致要建立大量连接,所以影响页面加载速度。但今天看到阮一峰的一篇文章,发现真相原来不是这样的。 持久连接的概念 HTTP/1.0 版的主要缺点是,每个TCP连接只能发送一个请求。发送数据完毕,连接就关闭,如果还要请求其他资源,就必须再新建一个连接。 TCP连接的新建成本很高,因为需要客户端和服务器三次握手,并且开始时发送速率较慢(slow start)。所以,HTTP 1.0版本的性能比较差。随着网页
jeremyxu
2018-05-10
2.1K0
现代Web开发系列教程_07
今天结合前面说到的前后端开发知识,做一个小工程,这个小工程并不完全具体的业务功能,但该工程包括前后端,可以作为以后复杂工程的起点。 前端代码 前端代码稍微复杂一点,就先从前端代码开始。 frontend/js/demo6.js import React from 'react'; import ReactDOM from 'react-dom'; import ReactRouter from 'react-router'; import { Router, Route, IndexRoute, brows
jeremyxu
2018-05-10
6110
Web跨域总结
什么是同源 浏览器安全的基石是“同源政策”,所有浏览器都实行这个政策。所谓两个网页“同源”指的两个网页的“协议相同”、“域名相同”、“端口相同”。 浏览器为什么遵循同源政策 同源政策的目的,是为了保证用户信息的安全,防止恶意的网站窃取数据。设想这样一种情况:A网站是一家银行,用户登录以后,又去浏览其他网站。如果其他网站可以读取A网站的 Cookie,将会产生严重的信息安全问题。 不同源的两个网页有哪些限制 各自无法读取对方的Cookie、LocalStorage 和 IndexDB 各自无法操作对方的DOM
jeremyxu
2018-05-10
8690
现代Web开发系列教程_05
本篇不开发新的功能,不过对目前的编译环境重新整理一下。 区别开发编译与生产编译 在webpack.config.js中添加读取环境变量NODE_ENV ... var isProduction = (process.env.NODE_ENV === 'production'); ... 编译出css文件 ... var ExtractTextPlugin = require('extract-text-webpack-plugin'); ... var plugins_options = [ ...
jeremyxu
2018-05-10
6620
现代Web开发系列教程_04
本篇使用redux结合react重写刚才那个很简单的hello world示例。 redux的理念 redux有三个重要的理念:单一数据源、状态是只读的、使用纯函数转换状态。具体见链接 安装redux与react-redux 1 npm install redux react-redux --save 状态转换纯函数 web-src/js/components/GreetingConstant.js 1 export const CHANGE_NAME = 'CHANGE_NAME'; web-src/
jeremyxu
2018-05-10
7130
现代Web开发系列教程_03
现在我们使用React重写昨天的hello world示例。本篇涉及了很多react的知识,如果不清楚,建议先看看react官方文档 安装react及babel npm install react react-dom --save npm install babel-core babel-loader babel-preset-react --save-dev 修改js代码及模板文件 demo2.js var React = require('react'); var ReactDOM = require(
jeremyxu
2018-05-10
7010
现代Web开发教程系列_01
##引言 工作大概9年了,就算不算上在学校里的写网页的经历,其实从事与Web前端有关的开发已经8年。这8年我自己也随着Web开发技术的革新,也在不停地更新这方面的知识体系。最近在想,是时候对目前所掌握的Web开发技术进行一个小结了。于是就有了这个系列的开始,这个系列开篇会概览性地说一下Web开发几个重要的工具或技术,后面则会在以demo示例的方式讲一讲在真实项目中是如何实践它们的。 很多年前,那个时候写前端页面真的很简单,基本上抓起一个编辑器就可以开始写html了,当时页面真的很简单,就是一堆html标签,
jeremyxu
2018-05-10
7130
使用grunt对css中的background图片自动生成雪碧图
公司研发的系统为B/S架构,用户使用浏览器访问系统时,使用浏览器自带工具查看,对图片的请求数极多,多为小图片。 今天想对这个现状进行改善,网上查到一种雪碧图的方案,其实就是使用工具将数量很多的小图片拼成一张大图片,然后css里都引用这张大图片,并指定显示该图片的某一个区域,但这个方案需要手工作很多处理。 于是就想到能不能用目前比较成熟的grunt对前端样式文件自动进行处理,自动生成雪碧图,自动修改样式文件。一搜索果然找到了方案,下面为Gruntfile.js文件的片断: module.exports = f
jeremyxu
2018-05-09
1.6K0
Video.js简单使用
今天项目中需要跨浏览器地播放视频,在网上找了一下,找到了video.js,记录一下video.js的简单用法。 <html> <head> ... <!-- 引入video.js的样式文件 --> <link rel="stylesheet" type="text/css" href="css/video-js.css" /> ... <!-- 如果没有使用Modernizr,则使用以下代码做shiv --> <script type="text/javascript"> document.createE
jeremyxu
2018-05-09
17K0
没有更多了
社区活动
【纪录片】中国数据库前世今生
穿越半个世纪,探寻中国数据库50年的发展历程
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档