实战演练:用gulp+webpack构建用户登录(1)

Web自动化实战:从Gulp到Selenium与云端测试的完整指南 Web自动化是现代软件开发中提升效率与保障质量的关键技术,其核心原理是通过脚本或工具模拟用户操作,自动执行浏览器任务。这项技术的价值在于实现测试与构建流程的一致性和可重复性,显著提升持续集成与部署(CI/CD)的可靠性。在实际应用场景中,Web自动化主要分为构建流程自动化(如使用Gulp进行代码检查与转换)和浏览器操作自动化(如利用Selenium进行端到端测试)。通过结合本地任务运行器与云端测试服务,开发者可以构建覆盖多浏览器、多设备的健壮测试体系。本文聚焦于Selenium、Gulp等热词工具,深入探讨 阅读详情

1.先看目录结构
这里写图片描述
src目录下是源文件,最终要”编译”到build目录下。
tpl/login.html是登录模板文件,主要代码如下

    <h2>用户登录</h2>
    <p>用户名:</p>
    <p><input type="text" name="username" id="username" /></p>
    <p>密码:</p>
    <p><input type="password" name="pwd" id="pwd" /></p>
    <p><button id="loginBtn">登录</button></p>

src/main.js是控制登录脚本文件:

var loginBtn = document.getElementById("loginBtn");
loginBtn.onclick = function(){
    alert("登录测试");
}

2.先来看一看如何利用webpack把main.js打包到build/js目录下
2.1编辑项目根目录下的webpack.config.js文件:

module.exports = {
    // entry是入口文件,可以多个,代表要编译那些js
    entry:['./src/main.js'],
    output:{
        path: __dirname+'/build/js', // 输出到那个目录下(__dirname当前项目目录)
        filename:'build.js' //最终打包生产的文件名
    },
};

2.2 在终端执行webpack命令后
这里写图片描述

3.我们的需求是把src/tpl/login.html生成到build/html/下,把src/main.js生成到build/js/下。
我们来结合gulp完成这个需求。
利用我们之前学习的gulp-webpack把js编译;利用gulp把tpl下面的文件生成到build/html/目录下。

3.1 编辑gulpfile.js:

var gp = require('gulp');
var gulp_webpack = require('gulp-webpack')
var webpack= require('webpack');
var webpack_config = require('./webpack.config.js');

// 生成js文件
gp.task('build-js',function(){
    gulp_webpack(webpack_config,webpack)
        .pipe(gp.dest('./build/js'))
})

// 最终生成
/*
在执行run这个任务的时候,会先执行第二个参数里的任务
*/
gp.task('run',['build-js'],function(){
    gp.src(['./src/tpl/*.html']) //把src/tpl/下的所有html文件
        .pipe(gp.dest('./build/html')) //最终生成到build/html/下面
})

3.2执行命令:gulp run
这里写图片描述
我们暂时在html/login.html手动的引入js/build.js文件

<script src="../../build/js/build.js"></script>

最后来测试一把
这里写图片描述

构建Instagram风格的Web应用克隆 图片上传与处理:允许用户上传图片,并提供基本的编辑和滤镜功能。社交网络组件用户账户系统:支持用户注册、登录、个人资料编辑等基础功能。Mongoose是一个为MongoDB数据存储提供简单而优雅的接口的ODM(对象数据映射)库。它允许开发者在Node.js应用中使用传统的面向对象的编程范式来操作MongoDB中的数据。Mongoose将MongoDB的文档结构映射到Node.js对象,并提供了一种简单的方式来定义数据模型(schema)和对数据模型进行操作。 阅读详情

相关推荐

vue webpack 制作的登录组件

基于vue、webpack开发的登录组件,主要是源码,内容包含vue ajax数据传递等

实战演练:用gulp+webpack构建用户登录

转自:http://blog.youkuaiyun.com/github_26672553/article/details/52253737 1.先看目录结构    src目录下是源文件,最终要”编译”到build目录下。  tpl/login.html是登录模板文件,主要代码如下 h2>用户登录h2> p>用户名:p> p>input type="text"

sunscheung的博客 1005

Cursor概述及环境配置

Cursor 是一款基于 AI 的代码编辑器,支持 VS Code 配置迁移和 Java 开发环境配置。主要功能分为 Cursor Settings(AI 相关设置)和 Editor Settings(基础编辑器设置)。用户可通过一键导入或手动方式迁移 VS Code 配置,配置包括主题、扩展和快捷键等。对于 Java 开发,需配置 JDK 和 Maven 路径,并安装 Java 扩展插件以获得完整开发体验,如代码补全、调试和 Maven 项目管理。此外,Cursor 支持汉化配置,用户可安装中文语言包切换

Knight 3548

前端集成解决方案(webpack、gulp)

前端集成解决方案 前端集成解决方案 一、什么是前端集成解决方案 FIS(Front-end Integrated Solution)是专为解决前端开发中自动化工具、性能优化、模块化框架、开发规范、代码部署、开发流程等问题的工具框架。   二、解决了前端哪些问题   三、常用的前端构建集成 1、Gulp gulp是工具链、构建工具,可以配合各种插件做js压缩,css压缩,less编

linyeban的博客 7765

Q&A | ZStack替代VMware实问实答

ZStack替代VMware实问实答

zstack_org的博客 1800

LVGL9.2移植至正点原子阿波罗STM32F429开发板

LVGL(Light and Versatile Graphics Library)是一个开源的图形库,旨在为嵌入式系统提供高效、灵活的图形用户界面(GUI)解决方案。它具有小巧的内存占用和高性能的渲染能力,支持多种硬件平台,包括单片机、DSP 和 ARM 处理器等。LVGL 支持丰富的控件(如按钮、标签、图标、滚动条等),并提供强大的主题、样式和动画功能,使得开发者能够轻松设计出美观且响应迅速的界面。

m0_51149752的博客 3172

webpack执行流程知识点总结

假设你有一个 webpack.config.js 文件,其中定义了一些 webpack 配置选项,还有一些 shell 脚本参数,你想将它们整合到一个 options 对象中,然后将这个对象传递给下一个流程。

Vivien_CC的博客 2441

Python量化投资——mplfinance实现全功能动态交互式K线图(蜡烛图)【源码+详解】

特别鸣谢:@szFoxtech 同学热心提供了通过键盘操作平移和缩放K线图的代码!!在我的另一篇文章《七行代码利用tushare和mplfinance生成K线图》中,我介绍了两个非常好用的python库,结合起来可以非常方便容易地生成股票的K线图,对于使用python进行量化投资研究的朋友可谓是必备良方。如下图所示,仅仅几行代码,就能生成下面这张K线图:不过,仅仅使用七行代码生成的K线图,虽然看上去也像那么回事了,但是对于真正需要使用K线图作为研究工具或者可视化工具的朋友们来说,是远远不够的。在我看来,至少

m0_67390379的博客 9832

浅谈前端项目打包工具webpack和gulp

前端打包工具webpack和gulp,gulp的常见api介绍

llly0987的博客 3037

MDK5 Debug调试方法总结

MDK5 Debug调试方法总结

m0_70748084的博客 2万+

【python科研数据处理】将Endnote自动搜索的所有pdf文件,全都移动指定文件夹中

将Endnote自动搜索到的全部pdf文件,全都移动指定文件夹中1 背景2 问题解决 手动反爬虫,禁止转载:原博地址 https://blog.youkuaiyun.com/lys_828/article/details/122370892(优快云博主:Be_melting) 知识梳理不易,请尊重劳动成果,文章仅发布在优快云网站上,在其他网站看到该博文均属于未经作者授权的恶意爬取信息 1 背景 在进行期末考试周后,面对最后一门功课,需要提交至少80篇SCI参考文献,因此最快下载文献的方式就是通过Web of S

lys_828的博客 1825

Webpack的使用方法

chunk 表示一个文件,默认情况下 webpack 的输入是一个入口文件,输出也是一个文件, 这个文件就是一个 chunk,chunkId 就是产出时给每个文件一个唯一标识 id,chunkhash 就是文件内容的 md5 值,name 就是在 entry 中指定的 key 值。之所以先介绍context选项,是因为接下来要讲的Entry的路径及其所依赖的其他模块的路径可能会采用相对于context的路径来指定,context会影响到这些相对路径所指向的真实文件。不推荐全局安装 webpack。

u012167711的博客 364

Objective-C实现人工势场法(附完整源码)

Objective-C实现人工势场法(附完整源码)

希望我的博客,能帮上你解决学习中工作中所遇到的问题 426

前端速学成财:第十四课-实战演练:用gulp+webpack构建用户登录(1)

登录页面,基本要素如下: 1.页面展示 2.基本脚本判断 3.后端交互为了逼格,我们开始创建文件夹层级. 在项目根目录下创建src --main.js --tpl --login.html(后缀随意)注意:一旦发布到生成环境,以上文件是不需要上传到服务器上的1.利用我们之前学习的gulp-webpack把JS编译 2.利用gulp把tpl下面的文件生成到build/html

SxinBoss的博客 705

STM32G0/G4电机控制中三角函数与浮点运算优化实战

三角函数(sin/cos)和浮点运算是电机矢量控制(FOC)的核心基础,直接影响Clark/Park变换、SVPWM及观测器的实时性与精度。在资源受限的MCU上,标准math.h库因无硬件FPU支持而引发严重时序抖动,导致电流环延迟、转矩脉动增大甚至系统复位。通过硬件加速(如STM32G4的CORDIC协处理器)或定制化定点算法(如STM32G0的查表+线性插值),可将sin/cos计算从数十微秒压缩至1–3 μs量级,提升30倍以上效率。该方案广泛适用于BLDC/PMSM驱动、伺服控制及高动态响应嵌入式运

weixin_35751412的博客 107

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

实战演练:用gulp+webpack构建用户登录(2):简化

实战演练:用gulp+webpack构建用户登录(1)里有一个缺陷:后面页面上的js是我们手工引入的。利用htmlWebpackPlugin简化页面构建初步 1.安装npm i html-webpack-plugin --save-dev2.修改webpack的配置文件 var HtmlWebpackPlugin = require(‘html-webpack-plugin’) plugins

736

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

《nodejs+gulp+webpack基础实战篇》课程笔记(五)-- 实战演练,构建用户登录

一、用gulp +webpack构建登录页面(1):简单构建   我们做项目经常要做的“百搭”页面 登录页面 ,它的基本要素如下: 1、页面展示要素 2、基本脚本判断 3、后端交互。   在项目根目录下创建 src(有逼格的名称) --tpl (代表是模板) --login.html(后缀随意) 注意,一旦发布到生产环境, 以上文件是不需要上传到服务器上的。 <!--src/tpl/lo...

weixin_30772261的博客 208

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

VPS上部署Gulp.js自动化构建实战指南

Gulp.js 是基于 Node.js 的流式任务运行器,核心原理是通过 JavaScript 管道(pipe)串联文件处理操作,实现 CSS 压缩、JS 混淆、HTML 优化等静态资源构建任务。其技术价值在于轻量、可控、无状态,特别适合在 Linux VPS 等服务端环境替代手动部署流程,规避 npm 权限错误(如 EACCES)、网络超时(ENOTFOUND)及构建路径混乱等高频问题。典型应用场景包括静态博客自动发布、Vue/React 项目 CI/CD 前置构建、Nginx 托管站点的资产预处理。本文

weixin_30776545的博客 453

gulp webpack php,前端开发速学成财(nodejs+gulp+webpack基础实战篇)

本课程正在限时优惠中,请尽快购买原价:¥250优惠价:¥999.00章节导航课程大纲第一章:开脑与热身本课时是开张课,我们适当讲个故事来帮助大家理解javascript和NodeJS.不要忽略这段历史,否则我们很难明白后面的知识点到底是怎么来的。说到底,这些历史的产生都是因为“钱”。第二集我们进入速学节奏,本课时包含知识点:1、require外部文件 2、NPM来安装jquery 3、引用第三方模...

weixin_42544663的博客 181

前端开发速学成财:nodejs+gulp+webpack基础实战篇-沈逸-专题视频课程

本课程是目前流行的前端开发速学课程。知识点涉及怎么结合gulp、webpack、Babel等并结合NodeJS+NPM开发前端。通过本课程让你领域目前时髦的前端开发方式,而不再是简单的在页面里写写javascript或css,进一步提升我们的前端开发逼格...

沈逸的IT专栏---shenyisyn 1449

Gulp.js在VPS上的生产级自动化实践:轻量、稳定、可审计

Gulp.js作为基于Node.js的流式任务编排工具,其轻量级、无守护进程、低内存占用(实测仅12.3MB)的特性,使其成为资源受限VPS环境下的理想自动化引擎。它不依赖浏览器或复杂构建上下文,核心能力在于事件驱动的管道化处理(stream-based processing)与可复现的任务调度(task orchestration),天然适配Linux服务器权限模型与运维范式。相比Webpack等重型工具,Gulp更易嵌入CI/CD、crontab及Nginx协同流程,支撑静态资源构建、日志分析、配置生成

weixin_30480075的博客 352

Gulp打包普通前端工程

博客已经停更一年多了,因为工作比较忙,当然这不是主要原因。主要还是自己没有什么有价值的给大家分享。 今天要跟大家分享的是前端打包技术,对于一个后台开发来说有的时候你可能不一定能用到vue进行前端开发,很多时候我们用的就是一个普通的web前端工程 如layui。但是天下武功为快不破谁不想自己开发的项目又快又好用,而且不易被人盗用。这个时候我们就需要打包、压缩、混淆代码你就需要用到gul...

嘟嘟技术 1378

探索高效后台管理系统的构建:Vue与Webpack的完美结合

探索高效后台管理系统的构建:Vue与Webpack的完美结合 在当今快速发展的技术环境中,构建一个高效、灵活且易于维护的后台管理系统是每个开发团队的追求。今天,我们将介绍一个由资深开发者lifetea精心打造的开源项目——基于Vue和Webpack的后台管理系统,它不仅展示了现代前端技术的强大能力,还为开发者提供了一个极佳的学习和实践平台。 项目介绍 这个开源项目是一个完整的后台管理系统,它利用了...

gitblog_01078的博客 462

vue-Webpack

​ webpack是一个打包模块化javascript的工具,在webpack里一切文件皆模块,通过loader转换文件,通过plugin注入钩子,最后输出由多个模块组合成的文件,webpack专注构建模块化项目。

延成的博客 1063

我们是如何从ng1迁移ing到vue的

原本的技术栈 ng1 + gulp + slim + vue *2 + iframe 的一个后端管理项目 这是一个本身因为人手不足,一开始由后端同学创建的后端管理项目,基本采用了gulp + ng1来进行开发,同时前端接手之后为了方便开发以及跟上潮流,采用了新开子目录使用vue开发,nginx和iframe进行整合的方式,最后一个项目变成了三个项目,其实最开始进行开发的时候,连怎么启动都不知...

weixin_33836223的博客 289

su mysql bash4.1_Centos7创建用户su登录后显示为 bash-4.1$

字典的循环和if语句字典是键-值(key-value)存储,循环的时候也是以键为对象 d = {'Michael': 95, 'Tracy': 85,'Bob': 75} for x in d : print x 输出结 ...Python数据结构与算法--List和DictionariesLists 当实现 list 的数据结构的时候Python 的设计者有很多的选择. 每一个选择都有可能影响着...

weixin_39958137的博客 220
上一篇: React Native商城项目实战01 - 初始化设置
下一篇: 实战演练:用gulp+webpack构建用户登录(2):简化
学习笔记666
博客等级 码龄12年 1047粉丝 1369原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值