Press "Enter" to skip to content

Category: Web编程

React 和TypeScript 练习笔记(二)—— 复合状态值与两种组件模式

本系列为Lemoncode开源项目(其中之一)练习总结,原项目共有15个练习,经分析,主要可归结为五个练习:

  • 1 简单交互与CP模式
  • 2 复合状态值与两种组件模式
  • 3 表格数据与后端缓存
  • 4 路由与表单验证
  • 5 Context与会话状态

第二组练习由7、8、9 三个子练习组成,目的归结起来主要为了展示 复合交互状态(object),和两种复用组件模式(professional and children props)

React 和TypeScript 练习笔记(一)——简单交互与CP模式

本系列为Lemoncode开源项目(其中之一)练习总结,原项目共有15个练习,经我的分析,主要可归五个练习:

  • 1 简单交互与CP模式
  • 2 复合状态值与两种组件模式
  • 3 表格数据与后端缓存
  • 4 路由与表单验证
  • 5 Context与会话状态

第一个练习由前6 个子练习组成,目的归结起来主要为了展示 最经典的React 组件模式——CP模式。

React 实践自训笔记(一)

这两年一直在打 前端开发的专业基础,没有什么实践,主要以看代码为主,很少动手,现在开始补。这几天在github搜寻,还是找到一些不错的开源实践项目,逐个做一做,并整理成文,结为经验。

找到了几个(看下面),因为都是精心设计过的线下课程,它们的特点或优点是 主题内容较全面,练习题循序渐进,练习题描述清晰,且答案配套,非常适用自学用。

开始之前,先聊一聊有关 实践和理论的关系。

前端模块化开发实验(三)—— React 模块的Welcome world

光有 webpack 等bundling技术 是不够的,前面第一篇说了,构件表达,和构件复合方式 是推动 前端工程模块化的关键。因为即使你有打包不同web模块的机制,可是如果 模块本身的格式编写起来很费劲(看第二篇的Greeting V模块),可扩展性和可维护性差,那工程效率就很低,就谈不上成熟的工程模块化了。

前端模块化开发实验(二)—— 纯JS 模块的Welcome world

当我们往/src 目录创建新源文件,或拷入新资源数据(例如图片),它们都均属于某一种类型 「web模块」类型 的意义是说,它是有某种 固定格式,包括外部形式,和内部构成。例如 V模块类型一定会访问DOM的,样式模块一定有样式定义,并提供给V模块使用等等。本文我们正式开始写V模块。

上一篇我们 为前端模块化开发 做了最基础的工作,包括webpack基础配置(包括开发服务器),和index模块的创建,还创建了一测试的V模块app.js。

然而,这些基础配置是不完整的。第一,app.js没有被转译为更通用的 ES5代码;第二,没有配置支持开发CSS和资源模块。本文任务就是配置更完整的 webpack,并且开发更完整功能 Welcome world 作演示。

前端模块化开发实验(一)——模块概念以及webpack基础配置

现在web 应用前后端分离,前端独立成一个专业,并且还工程化了,这个事实对于 经历过早期Web1.0和2.0的开发者而言,刚接触时应该是比较新奇的。

应用软件网络化,web services 成为不可阻挡的 软件应用的风潮。作为一名技术开发者,一名经历过早期web开发的人,我最感兴趣是 前端工程化的概念——什么东西被工程组件化了。

配置开发环境(webpack)以支持开发React项目

(本文介绍手动配置前端开发环境——构建工具链的核心部分,通常这部分我们都是通过前端框架官方脚手架自动搭建的,例如React 的 create-react-app 和 Vue的 Vue CLI。如果你想了解这些脚手架为我们做了什么,本文对你有用。)

当我们手动为了一支现代的「Web 应用」 准备开发环境,这个过程对于新手来说,不是特别的简单,尤其是当前端使用了像React框架的情况,因为社区生态(ecosystem)存在错综复杂的关系。这需要一些 分析,学习,和记录具体过程。

CSS样式开发未来的三项技术——SASS、CSS-in-JS和TailwindCSS

现在(2022)的Web开发 在工具选择上 真是太多了,就「前端样式」[注] 一项任务就有很多技术供选择,本文说说CSS三项主流技术的特点和区别。

注:web开发 可分为 后端(RH开发的MVC),前端(V组件的 UI结构,样式和交互)多种任务

本文在此文(SASS vs CSS-in-JS vs TailwindCSS)基础之上改写而成,加入自己的见解。

Laravel 前端脚手架选择指南

开发企业应用(大规模应用),我们需要,也喜欢使用框架、工具库甚至是现成的脚手架(scaffolding)。因为「框架」给我们提供高效舒适的开发环境,「脚手架」则甚至提供即用的半成品,二者结合可以让我们迅速 进入 业务开发。

开发web应用 ,laravel 是 流行后端框架的一支,laravel官方除了是 高效的后端框架外,也提供很多 脚手架,这些脚手架不限于后端,也有全栈的,看这里(https://laravel.com/docs/9.x/starter-kits)。

  • 后端脚手架:fortify, sanctum
  • 前端(全栈)脚手架:ui, breeze, jetstream

此外,laravel 发展 推进了 前端技术的创新,还出现两种新技术:livewrie , inertia。

这样,在兼顾新技术拓展,和后向兼容,「laravel 前端脚手架」多样发展,让新手感觉眼花撩乱, 不知如何选择。

passport.js 本地策略 与 express app 集成步骤

web app 用户认证功能模块,是一个高级用户交互功能模块,也是很基础的功能模块。因为大部分web应用 有用户特定的私密的交互会话。

用户认证功能 ,从名字就可推知,它是在用户数据模块基础之上的应用。

本文记录了使用 passport.js 作为 开发用户认证功能模块任务 的工具,省下了一功夫,也将 用户认证功能模块 的处理逻辑 标准化。也为日后使用其他认证方式提供了扩展(例如 使用微信,微博等社区授权登录)。