人心只能赢得,不能靠人馈赠——叶芝 分享一个前端框架pug github地址:https://github.com/pugjs/pug 它可以以下面的方式编写html doctype html html...if (foo) bar(1 + 5); body h1 Pug - node template engine #container.col if youAreUsingPug...Pug is a terse and simple templating language with a strong focus on performance and powerful...if (foo) bar(1 + 5); Pug - node template engine You are amazing Pug is a terse and simple
理解 Pug是一款健壮、灵活、功能丰富的HTML模板引擎,专门为 Node.js 平台开发。Pug是由Jade 改名而来。...命令行 将pug格式转化为HTML的时候输入命令pug -P xxx.pug 自动更新 pug -P -w xxx.pug 有自定义目录的需求,则需要设置-o参数 3. 结构语法 结构语法: 1. ...注释: // 单行注释 //- 非缓冲注释 //(换行) 给模板写的块注释 … 条件注释 5. ...命令行直接赋值 pug ./views/index.pug -P -w –obj “{‘text’:’pug’}” b....新建一个JSON文件,写入{“text”:”study pug”},然后通过命令行 pug ./views/index.pug -P -w -O .
</span> Js表达式嵌入 - var msg = "not my inside voice"; p This is #{msg.toUpperCase()} 等价于--> <
theme: simple-theme 外部执行一下hexo s启动项目试试 打开localhost:4000 因为我们什么都没写,所以是白屏 新建一个layout目录,下面放一个index.pug....container Hello World 发现我们的pug代码并未渲染 这是因为我们没有安装pug插件导致的 到主目录执行 cnpm i hexo-renderer-pug pug元素成功渲染
两种主要的迭代方式: each 和 while 一、each 1、最简单的迭代 ul each val in [1, 2, 3, 4, 5] li=...
Pug是一款健壮、灵活、功能丰富的HTML模板引擎,专门为 Node.js 平台开发。Pug是由Jade 改名而来。...优点: 1、无需结束标签 2、强制缩进 3、代码复用和维护 4、标签写法与CSS相同 搭建pug环境: 1、下载node.js和 npm 2、下载 pug , 命令:npm install pug-cli...baidu.com">百度 a(class='button', href='baidu.com') 百度 等价于--> 百度 Js...checked ) 等价于--> 属性嵌入: - var url = 'pug-test.html...'; a(href='/' + url) 链接 | | - url = 'https://example.com/' a(href=url) 另一个链接 等价于--> <a href="/<em>pug</em>-test.html
原文地址 https://www.aiprose.com/blog/126 1 介绍 pug 是一种前端模板引擎,原名 jade 可用来生成 HTML,它的写法类似于 CSS 这里先简单举几个例子...2 安装 2.1 下载 npm i -D pug pug-html-loader pug-plain-loader 或者 yarn add pug pug-html-loader pug-plain-loader...2.2 配置 // vue.config.js module.exports = { chainWebpack: config => { config.module.rule('...pug') .test(/\.pug$/) .use('pug-html-loader') .loader('pug-html-loader')....end() } } 2.3 使用,注意要加 lang=“pug” div.hello h1 Hello World </template
button> //这里是插件的代码;我为了方便都写到一个html中了;请把这个script标签中的内容单独写在一个js...window,document,jQuery的映射;方便内部直接调用; //当然你不引用jq的话头部的$和底部的jQuery干掉;你若引用了更过的依赖可以依次添加; //最后面的undefined可不写;...号(叹号)或者;(分号)这不是写错了,为了防止那个二货写的js结束没有分号;而可能发生报错 /* ;function(win,doc,$,undefined){ }(window...function就不调用;对;这里是调用的时候最开始执行的函数 } //;给构造函数addHtml对象原型里添加属性(方法) addHtml.prototype = {//给函数写方法...:addHtml,//构造器指向构造函数;这行其实不写没啥毛病;不过有时候防止构造器指向Object的情况;你还是装逼写上吧; init:function(){//这里的init;你也可以写成
http://data.eastmoney.com/jgdy/tj.html 我们希望抓取的是js生成的表格。 ...这种带有js的网站抓取其实不是那么简单的,基本分为那么几种方法,一种是观察页面,有的会有json数据,有的有js代码可以解析目标的url;一种是使用渲染工具;还有一种就是用工具来点击相关button,来抓取...我们希望爬取的是表格中的数据,但是如果我们仔细看一下html代码,会发现,这其实是js生成的,下面这张图是源代码的截图。 ? 这就很尴尬了,怎么办呢?...然后我们就点击第二页、第三页不断的来观察究竟js代码访问了什么后台的url。...pagesize=50&page=1&js=var YnQNqDYj¶m=&sortRule=-1&sortType=0&rt=50585869 http://data.eastmoney.com
同时,得益于Promise,我们在异步函数里可以这样写: (async () => { const data = await sleepSort([4, 5, 3, 6, 8]) console.log
when 0 when 1 p 您的朋友很少 default p 您有 #{friends} 个朋友 等价于--> 您的朋友很少 friends =0 ,在 Pug
foot //- layout.pug html head title 我的站点 - #{title} block scripts script(src='/jquery.js...extends继承某个pug, 然后定义相同名称的代码块即可实现替换 extends layout.pug block scripts script(src='/jquery.js') script...(src='/pets.js') block content h1= title - var pets = ['猫', '狗'] each petName in pets include...pet.pug 在覆盖一个代码块的同时在该代码块内添加新的代码块 //- sub-layout.pug extends layout.pug //- 覆盖原有的content代码块,并添加了两个子代码块.../three.js') script(src='/game.js')
20171018 pug——文字内部嵌入结构 比如: 里边有一段内部文字的实例!... 要是用pug得这么写: a.href | 里边有一段 strong 内部文字 | 的实例! 是不是很恶心,这么写还老容易出错!
Hexo更改主题后启动服务器,界面显如下字符: extends includes/layout.pug block content include includes/recent-posts.pug include
2 2--> <script src="<em>js</em>/2048.<em>js</em>" type="text
原文地址:https://github.com/lianxiaozhuang/blog 转载请注明出处 js 写插件教程深入 1.介绍具有安全作用域的构造函数 function Fn(name...constructor:Fn, getF:function(){ console.log(1); } } new Fn(); //new 出来的Fn就是一个构造函数 //倘若有人忘记写new...function(){} //大家可能都会有这样的纠结,getC到底写到this里还是原型里 //这要从内存说起;写到原型上,每执行一个实例,getC不需要开辟新的内存 //故,可以把一些纯计算的方法,写原型上...,如果方法和实例本身有关,应该写道this中 4.方法名防止冲突处理 //如果在引入你的插件之前,window下已经有Fn的变量;怎么办,你如果这么搞; 岂不是把别人写的Fn搞掉了 //此时应该把...var MyPlugin = function(options) { this.name = name; this.init(); }; //覆写原型链
前言 在这篇文章中,我们将通过 JS 构建我们自己的 JS 解释器,用 JS 写 JS,这听起来很奇怪,尽管如此,这样做我们将更熟悉 JS,也可以学习 JS 引擎是如何工作的!...Webpack/Rollup/Babel(@babel/parser) 等第三方库也是使用 acorn.js 作为自己 Parser 的基础库。(站在巨人的肩膀上啊!)...acorn.js parse 返回值符合 ESTree spec 描述的 AST 对象,这里我们使用@types/estree 做类型定义。...: Expression | null; } Identifier 顾名思义,标识符节点,我们写 JS 时定义的变量名,函数名,属性名,都归为标识符。...JavaScript Build a JS Interpreter in JavaScript Using Acorn as a Parser
1、下载nw.js https://nwjs.io/ 最好下载sdk版本。 2、解压打开安装包 下载完之后,解压打开 图中的「app文件夹」是我自己创建的,你也需要自己创建一个,里面放你项目文件。...下载链接打开它,选中「app.exe」然后将你刚才下好的nw.js里原始文件(除去你自己生成和创建的文件或文件夹)。
或许你知道,有个东西叫emmet,它是解决了你写的时候多写的那些内容,但是并没有解决冗余的代码行数,更不要提在你没有完全熟练使用emmet前,脑子里面需要进行大量的预翻译!...如何使用 1. npm下载包 npm i -D pug pug-loader 2. lang这里改成pug使用 使用Pug、CoffeeScript、Sass...写法: label input(type="checkbox") span 记住密码 .show-box 对比分析: 传统:95个字符,5行,3个结束标签整成Pug pug:54个字符,4行,没有结束标签...Pug其他功能这里记得Pug是后端模板起家,所以功能肯定不单单是简化语法这么简单,她也有变量、混合、过滤等等等等功能,但是实际上这些功能在使用中跟Vue功能重复,我们搭建项目主要还是Vue,所以能用Vue...的就用Vue的,Pug对于我们项目来说,最大的功能就是精简和整理代码。
前言 本文是对Heo博主写的Butterfly魔改:动态分类条,可以根据页面变化而改变的分类列表展示方式文章的补充,增加了动态标签条,并且可以自动获取全站分类和标签名称。 2. 预览 3....配置 3.1 新建PUG文件 首先是分类条,在themes/butterfly/layout/includes/处新建文件categoryBar.pug #category-bar .category-bar-items...a.category-bar-more(href="/tags/") 更多 3.2 新建Hexo辅助函数 在theme/butterfly/scripts/helpers/中创建get_arrays.js...引入js和css文件 这一部分和Heo博主的教程Butterfly魔改:动态分类条,可以根据页面变化而改变的分类列表展示方式 | 张洪Heo (zhheo.com)一致。...不过如果添加了标签条,js文件需要增加一个函数 //标签条 function tagsBarActive(){ var urlinfo = window.location.pathname; urlinfo
领取专属 10元无门槛券
手把手带您无忧上云