github项目学习--Vue结合Pug模板引擎

Eleventy静态网站生成器核心原理与工程实践指南 静态网站生成器(SSG)是JAMstack架构中实现高性能、高SEO友好性网站的关键技术。其本质是在构建时(build-time)将模板、内容和数据预编译为纯HTML文件,规避运行时开销。Eleventy作为轻量级SSG代表,以零运行时依赖、原生Node.js支持和灵活的数据层设计脱颖而出。它不抽象路由与状态,而是通过文件系统约定、`_data/`目录驱动的数据注入、Nunjucks模板的JavaScript表达式能力,以及Collections动态页面生成机制,实现可预测、可审计的静态输出。本文深入解析其 阅读详情

今天看到github上面一个vue项目,用的是Pug模板写的,很多人不知道Pug是什么,但要说到jade,相信很多人反应过来了。没错,Pug前身就叫jade,但是由于商标等问题,改名为Pug,当然,语法还是和原来一样,在编辑器中使用模板,很多编辑器都带有pug插件,如sublime等,编译的结果就是html正常的代码样子了。

那Vue究竟如何与它结合的呢?

首先,除了要安装pug,还要安装pug-cli

npm install -g pug
npm install -g pug-cli

说实话,这个工具确实是为懒人准备的,语法好理解并且简明扼要。

简单来说,就是:标签名+用于样式的类名+(属性) eg:div.className(v-if="showSomthing" :class=[xxx,yyy] :style="zzz")

vue文件中首先要表明使用的是pug模板,如:<template lang="pug">,视图层的数据绑定仍然用 {{ xxx }},剩下的就可以自由发挥了。。。更深入的研究可以参考:https://github.com/pugjs/pug


UI输出协议设计:Markdown、HTML与UI DSL的分工与融合 在Web开发中,UI渲染的核心是构建一套清晰的数据到界面的转换协议。HTML作为浏览器原生支持的标记语言,是所有UI输出的最终形态,它定义了文档的结构与内容,是前端与渲染引擎之间的基础合约。其技术价值在于提供了跨平台的标准化渲染指令,但直接操作HTML在复杂应用中会导致逻辑与结构混杂,维护困难。因此,在面向内容创作的场景,常引入Markdown这类轻量级标记语言作为结构化内容中间态,它让创作者专注于内容本身,再通过解析器安全地转换为HTML。而在构建高度交互、状态复杂的动态界面时,则需要UI DSL(如JS 阅读详情

相关推荐

Lodash原型污染漏洞深度解析:从原理到修复实战

原型链是JavaScript实现继承的核心机制,它允许对象通过内部属性`[[Prototype]]`访问和继承其他对象的属性。然而,当外部输入能够篡改原型对象时,就会引发原型污染漏洞,导致所有基于该原型的对象行为异常。这一漏洞的技术价值在于其作为基础安全威胁,常被用作攻击链的启动器,可能引发数据篡改、权限绕过甚至远程代码执行等严重后果。在Web应用和Node.js服务中,深度对象操作函数是常见的高危场景。本文聚焦于Lodash库中`_.merge`、`_.defaultsDeep`等函数引发的原型污染问题,

686

vue 中使用 pug

pug 大大简化了 html 的格式,并且在pug模板里面可以使用js代码。

qq_22783587的博客 1135

前端安全实战:深度解析与自动化修复lodash原型污染漏洞

原型污染是JavaScript中一种常见的安全漏洞,其原理源于JavaScript的原型链继承机制。当攻击者能够篡改Object.prototype时,所有基于该原型的对象行为都可能被影响,从而引发严重的安全风险。这种漏洞的技术价值在于揭示了深层次对象操作中潜藏的攻击面,其应用场景广泛,尤其在处理用户输入、合并配置或渲染动态内容时风险极高。本文聚焦于前端开发中广泛使用的工具库lodash,其4.17.12版本之前的部分深合并函数,如`_.merge`和`_.defaultsDeep`,因未对特殊属性进行有效

congsikuai0611的博客 460

1.1 pug常用命令

一、先安装pug及pug-cli npm install pug

LetsStudy的博客 478

2021哈工大网安837考研初试经验贴

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 欢迎使用Markdown编辑器 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar

weixin_41797880的博客 6523

Silvaco TCAD实战 | SiC MOSFET工艺仿真与关键参数DOE分析

本文详细介绍了使用Silvaco TCAD进行SiC MOSFET工艺仿真与关键参数DOE分析的实战方法。通过外延生长建模、离子注入工艺调试等步骤,结合DOE分析优化器件性能,帮助工程师在设计阶段预判电学特性,提升产品可靠性。文章还分享了网格划分、界面态建模等实用技巧,助力实现从仿真到产品的闭环验证。

weixin_30235225的博客 507

Pug -- 全新的 Vue 高效书写体验

在年初Vue3刚成为Vue的默认版本时,在文档中看到了Pug的影子,虽然好奇,由于时间关系一直没能专心去尝试一下Pug在Vue3🀄️的体验。最近决定不能一拖再拖了,熬夜体验了一番,果然没让人失望。最近还整理一份JavaScript与ES的笔记,一共25个重要的知识点,对每个知识点都进行了讲解和分析。能帮你快速掌握JavaScript与ES的相关知识,提升工作效率。

军火库 3998

SAP SD跨公司销售IDOC自动记账配置实战指南

本文详细介绍了SAP SD模块中跨公司销售IDOC自动记账的配置实战指南。通过IDOC技术实现集团企业间交易的自动化处理,显著提升财务效率和准确性。文章涵盖前置配置、RFC连接、合作伙伴参数设置及财务科目分配等关键步骤,并提供了常见错误排查和性能优化建议,帮助用户快速掌握这一高效业务流程。

weixin_29284885的博客 770

Vue中lang=pug模板引擎之pug模板语法

pug 是一种前端模板引擎,原名 jade,可用来生成 HTML,它的写法类似于 CSS。入门指南 – PugHTML标签必须进行闭合,如果不闭合的话容易报错。HTML没有模板机制,如果不使用前端框架维护起来非常困难。易理解,极大的简约了我们的代码。

weixin_52740695的博客 1749

双向晶闸管交流调压基础知识及Multisim电路仿真

本文介绍了双向晶闸管交流调压电路的工作原理及应用。该电路由双向晶闸管、RC移相电路和双向触发二极管组成,通过调节电位器改变触发角实现电压调节。当电位器阻值减小时,触发角减小,输出电压升高;阻值增大时,触发角增大,输出电压降低。Multisim仿真展示了不同电位器档位下的波形特征:0%档位时全导通,50%档位时半导通,100%档位时基本关断。该电路结构简单、调节平滑,广泛应用于调光、调速等场合,但会产生谐波干扰。

XU157303764的博客 838

ENU坐标系实战:5分钟搞定无人机导航中的站心坐标转换

本文针对无人机导航中GPS坐标与视觉感知不匹配的定位漂移问题,提供了基于ENU坐标系的实战解决方案。通过Python代码演示了如何快速、精准地实现地心地固坐标与站心坐标之间的转换,并详细解释了转换原理、精度对比及工程优化技巧,帮助开发者从根本上解决局部相对定位不准的难题。

mqtt6iot的博客 552

pug的安装以及pug-plain-loader处理模板

安装 npm install pug 处理模板 pug-loader 大多数Webpack模板加载器(例如)都pug-loader返回模板函数而不是已编译的HTML字符串 pug-plain-loader 代替使用pug-loader,我们需要使用一个返回原始HTML字符串的加载器,例如pug-plain-loader 安装pug-plain-loader npm install -D pug pug-plain-loader 安装成功: 然后就可以编写了 <template lang="pug

weixin_46686024的博客 4188

Hypermesh联合ABAQUS—Sets的建立和编辑

打开part copy对话框在对话框的最上面位置可以输入copy后的名称,然后将最下面的Separate disconnected regions into parts(将不连续的区域分割成parts)选项的前面方框勾选上。打开abaqus软件界面,File→import→model,将file filter选为inp格式,找到要导入的有限元文件,单击OK导入文件。HyperWorks新建Set时,会在Model Browser显示,打开Create Set对话框显示详细信息。快捷键,高亮set的内容。

动力资料屋的博客 1292

Jade4j完全解析:从Java实现到Pug 2语法兼容的无缝体验

Jade4j是一个用Java编写的Pug(前身为Jade)模板引擎实现,它允许开发者在Java环境中处理Pug模板,无需依赖JavaScript运行时,同时保持与原始Jade语法的完全兼容。作为GitHub加速计划的一部分,Jade4j已更名为Pug4j,并支持几乎所有Pug 2语法,为Java开发者提供了高效、灵活的模板解决方案。 ## 🌟为什么选择Jade4j?三大核心优势 ### 1.

gitblog_00589的博客 686

Kile5报错—> ARM-Compiler ‘Default Compiler Version 5‘ which is not available安装使用Compiler Version 5 的办法

Kile5报错—> ARM-Compiler ‘Default Compiler Version 5‘ which is not available安装使用Compiler Version 5 的办法

weixin_72050316的博客 1183

【科学文献计量】标准参考出版年谱(Standard RPYS)和多维参考出版年谱(Multi RPYS)

@[TOC](标准参考出版年谱(Standard RPYS)和多维参考出版年谱(Multi RPYS)) 1 标准参考出版年谱与多维参考出版年谱 1.1 标准参考出版年谱(Standard RPYS) 标准参考出版年谱(Standard Reference Publication Year Spectroscopy)是由Marx, Bornmann, Barth, and Leydesdorff(2014)和Marx and Bornmann(2014)提出的一种量化历史出版物对研究领域影响的方法。该方法通

lys_828的博客 1103

hexo-theme-typography 深度开发指南:Pug 模板修改与功能扩展

Hexo-theme-typography 是一款专注于排版美学的 Hexo 博客主题,以其优雅的设计和灵活的定制性受到开发者喜爱。这款主题采用 Pug 模板引擎和 SCSS 预处理器,为开发者提供了强大的自定义能力。本指南将带你深入了解如何修改 Pug 模板和扩展主题功能,打造独一无二的博客体验。 ## 📋 主题结构与核心文件解析 在开始深度开发之前,让我们先了解 hexo-theme-t

gitblog_00511的博客 675

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

AI驱动的代码安全审查:从原理到GitHub Actions自动化实践

代码安全审查是保障软件质量与安全性的核心环节,其核心原理在于通过自动化工具对源代码进行静态分析,识别潜在的安全漏洞与不良实践。传统基于规则匹配的静态分析工具(SAST)如SonarQube,通过预定义的模式库进行扫描,而新兴的AI驱动审查则基于大语言模型(LLM)理解代码语义与上下文,旨在发现更隐蔽的上下文依赖型风险。这项技术的核心价值在于将安全防护“左移”,在开发早期自动化、规模化地发现问题,从而显著降低修复成本并提升开发效率。其典型应用场景是集成在持续集成/持续部署(CI/CD)流程中,特别是在GitH

weixin_33937499的博客 344

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

快速搭建个人博客网站——Hexo

Hexo

苦作舟的空城机 696

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

5个现代Web开发痛点与Express.js的架构级解决方案

Express.js作为Node.js生态中最流行的Web框架,以其"快速、无主见、极简"的设计哲学,为后端开发提供了坚实的基石。在前100字的篇幅内,我们需要明确:这是一个专注于构建高性能API和Web服务器的框架,它不强制任何特定的ORM或模板引擎,而是通过强大的中间件系统让开发者自由组合技术栈。Express.js的真正优势在于其生态系统——超过14种模板引擎支持、丰富的中间件库,以及与No

gitblog_00034的博客 449

strix 安全测试实战:服务器端模板注入(SSTI)引擎指纹识别、沙箱逃逸与 RCE 利用链全解析

本指南围绕开源 AI 渗透测试工具 strix 内置的 [`ssti` 漏洞测试技能](https://link.gitcode.com/i/c74dec8205d938325ba320f316275a44)展开,系统讲解服务器端模板注入(Server-Side Template Injection,SSTI)从攻击面梳理、引擎指纹识别到跨语言 RCE 利用链的完整方法论。读完本文,你将掌握如何用

gitblog_00228的博客 613

《大前端进阶 Node.js》系列:必知必会必问 万字详解

Node.js核心摘要 Node.js是基于Chrome V8引擎的JavaScript运行时环境,支持服务端开发。其核心特性包括: 事件驱动与非阻塞I/O:通过回调机制处理高并发,避免线程阻塞; 单线程与事件循环:利用事件循环高效管理异步任务; 模块化生态:通过npm管理模块,支持exports和module.exports导出; 异步编程:提供回调、Promise和async/await三种方式处理异步操作。 关键技术: 常用模块:fs(文件操作)、http(服务器)、Buffer(二进制数据); Ex

油墨香^-^的博客 230

Tailwind CSS 自动 source 检测深度剖析:哪些文件被扫描,哪些被忽略

Tailwind CSS 是一款 utility-first(工具类优先)的 CSS 框架,其新一代 Oxide 编译器内置了 **source 自动检测**能力:你不再需要手动配置"哪些目录参与类名扫描",编译器会自动识别模板与源码文件并提取候选类名。本文将从扫描流程、默认规则到性能优化,带你完整看懂这套机制。 ## 一、扫描流程是怎么跑的? 自动 source 检测的核心逻辑位于 Rust

gitblog_01420的博客 625

Node.js应用Docker容器化实战:Express+Bootstrap一键部署

容器化是现代Node.js应用交付的核心范式,其本质是通过声明式配置实现运行时环境的一致性封装与可复现构建。基于Docker的容器技术,能从根本上解决跨平台依赖冲突、glibc/musl兼容性、npm模块编译差异等典型问题,显著提升开发-测试-生产链路的确定性。结合Express框架的轻量灵活与Bootstrap的开箱即用UI能力,开发者可快速构建具备健康检查、结构化日志、非root运行等生产就绪特性的Web服务。本文以node:18-alpine多阶段构建为实践主线,覆盖环境变量安全注入、HEALTHCH

weixin_34187862的博客 330

Tailwind CSS Rust 与 TypeScript 双语言协作架构完全解析

Tailwind CSS 之所以能成为构建速度飞快的 utility-first CSS 框架,秘密就藏在它的 Rust + TypeScript 双语言协作架构里:Rust 负责高速文件扫描与类名提取,TypeScript 负责 CSS 编译与生态集成,两者通过 N-API 无缝衔接。本文将带你快速看懂这套架构的分工、桥梁与协作流程,即使是新手也能轻松上手。 ## 为什么选择 Rust + T

gitblog_01194的博客 882

Node.js + Express 集成 Builder.io:基于 HTML API 兜底路由的混合渲染实战

本指南以 builder 仓库中的 [node-express 示例](https://link.gitcode.com/i/1c73a09676343a0c66bfec3133ca39b2) 为核心,讲解如何用纯 Node.js + Express 搭建一个「代码优先、Builder 兜底」的站点:开发者手写首页、关于页等固定路由,未匹配到的所有其他 URL 由服务端实时请求 Builder.i

gitblog_00974的博客 195
上一篇: h5的video播放功能
下一篇: 关于虚拟技术的遐想--室内健身
驚鴻入梦
博客等级 码龄10年 23粉丝 21原创
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值