你可以通过 npx (包含在 Node.js 8.2.0 及更高版本中)命令来运行 Express 应用程序生成器。...npx express-generator # or npm install -g express-generator 对于较老的 Node 版本,请通过 npm 将 Express 应用程序生成器安装到全局环境中并执行即可...-v, --view 添加对视图引擎(view) 的支持 (ejs|hbs|hjs|jade|pug|twig|vash) (默认是 jade 模板引擎)...stylus|compass|sass) (默认是普通的 css 文件) --git 添加 .gitignore -f, --force 强制在非空目录下创建...如何你要视图引擎可以这样创建 express --view=pug myapp 如果不需要,也可以设置为no-view express --no-view myapp 创建好后执行 cd myapp
理解 Pug是一款健壮、灵活、功能丰富的HTML模板引擎,专门为 Node.js 平台开发。Pug是由Jade 改名而来。...是一种通过缩进(表示标签间的嵌套关系)的方式来编写代码的过程,在编译的过程中,不需要考虑标签是否闭合的问题。可以加快写代码速度,也为代码复用提供了便捷。 2....新建一个JSON文件,写入{“text”:”study pug”},然后通过命令行 pug ./views/index.pug -P -w -O ....循环 a. for循环: 必须加 – 标识 b. each循环:– 标识可以省略, each value,key in test中的value和key不能换位置 c. while 循环 d. ...条件循环:if else 判断 和 case 判断 7. mixin混入 是一种允许您在 Pug 中重复使用一整个代码块的方法。
Node.js 项目文件列表 通过上面的命令,我们用 EJS 视图引擎创建了一个 Express 项目。此视图引擎在 app.js 文件中设置如下: //......另外我们还可以通过添加 header.ejs 文件来分割页眉、页脚,然后包含如下脚注: Pug Pug - 以前名为 Jade,也是一个受欢迎的 Node.js 视图引擎项目。...'); 通过上面的例子,我们使用以下内容创建了 pug 文件: //file layout.pug doctype html html head title= title link...在你的开发工作中可以选择 Pug,因为它非常简单易懂。
Pug是一款健壮、灵活、功能丰富的HTML模板引擎,专门为 Node.js 平台开发。Pug是由Jade 改名而来。...是一种通过缩进(表示标签间的嵌套关系)的方式来编写代码的过程,在编译的过程中,不需要考虑标签是否闭合的问题。可以加快写代码速度,也为代码复用提供了便捷。...优点: 1、无需结束标签 2、强制缩进 3、代码复用和维护 4、标签写法与CSS相同 搭建pug环境: 1、下载node.js和 npm 2、下载 pug , 命令:npm install pug-cli...等价于--> 类属性: class(类)属性可以是一个字符串(就像其他普通的属性一样)还可以是一个包含多个类名的数组...*********字面值************************************************************/ 类的字面值: 类可以使用 .classname 语法来定义
想要使用一个插件,你只需要 require() 它,然后把它添加到 plugins 数组中。多数插件可以通过选项(option)自定义。...你也可以在一个配置文件中因为不同目的而多次使用同一个插件,你需要使用 new 创建实例来调用它。...下无法通过 右键=>新建 命令来创建以点开头的文件和文件夹,我们可以通过下面的命令生成.babelrc文件: type NUL > .babelrc Linux和Mac下可以通过touch命令生成:...我们这里自然选择webpack构建我们的工程,下载方案如下: 然后我们需要在项目根目录下建立.babelrc文件: 注:在window下无法通过 右键=>新建 命令来创建以点开头的文件和文件夹...我们这里自然选择webpack构建我们的工程,下载方案如下: 然后我们需要在项目根目录下建立.babelrc文件: 注:在window下无法通过 右键=>新建 命令来创建以点开头的文件和文件夹,我们可以通过下面的命令生成
经过这些考虑,我决定采用NodeJS+ExpressJS+AngularJS(扩展HTML标签,动态HTML)+Jade(前端模板引擎,2016年4月已改名为PUG,但是改名后的版本还有问题,所以我们还是用...因此在代码中只需要通过 require(‘angular’) 的方式就好,无需指定第三方包路径。...可以通过 require() 来引入本地安装的包。 全局安装 1. 将安装包放在 /usr/local 下或者你 node 的安装目录。 2. 可以直接在命令行里使用。...唤出命令行,执行: npm install yo npm install bower npm install grunt-cli 之后,我们在项目根目录创建.bowerrc文件(填写bower管理的依赖库路径...文件移动到public下,同时修改app.js中的jade view路径。
11、HTML CSS Support 在HTML标签上写class智能提示当前项目所支持的样式 12、HTML Snippets 超级好用且初级的H5代码片段以及提示 13、Debug for Chrome...使用 vs code 来打断点调试 14、Document this Js 的注释模板 15、jQuery Code Snippets jquery 提示工具 16、Html2jade html 模板转...pug 模板 17、JS-CSS-HTML Formatter 格式化 18、Npm intellisense require 时的包提示工具 19、Open in browser 打开默认浏览器 20...One Dark Theme 一个vs code的主题 21、Path Intellisense 自动路径补全、默认不带这个功能 22、Project Manager 多个项目之间快速切换的工具 23、Pug...(Jade) snippets pug 语法提示 24、React Components 根据文件名创建反应组件代码。
11、HTML CSS Support 在HTML标签上写class智能提示当前项目所支持的样式 12、HTML Snippets 超级好用且初级的H5代码片段以及提示 13、Debug for Chrome... 使用 vs code 来打断点调试 14、Document this Js 的注释模板 15、jQuery Code Snippets jquery 提示工具 16、Html2jade html 模板转...pug 模板 17、JS-CSS-HTML Formatter 格式化 18、Npm intellisense require 时的包提示工具 19、Open in browser 打开默认浏览器 20...One Dark Theme 一个vs code的主题 21、Path Intellisense 自动路径补全、默认不带这个功能 22、Project Manager 多个项目之间快速切换的工具 23、Pug...(Jade) snippets pug 语法提示 24、React Components 根据文件名创建反应组件代码。
你可以在 Vue 单文件组件中使用像 Pug(前称为 Jade)、Stylus、Sass 等预处理器,通过配置 webpack 的加载器链,vue-loader 将会将它们转换为标准的 HTML 和 CSS...构建项目时,可以通过以下步骤安装和配置 vue-loader: 1:创建一个 Vue.js 项目,并且已经安装了 webpack。...2:在项目根目录下,通过 npm 或者 yarn 安装 vue-loader 和相关的预处理器依赖。...}; } }; h1 { color: red; } 在 标签中使用了 Sass 预处理器来编写样式...模板预处理器:支持使用 Pug (前称为 Jade)。 在使用 Vue CLI 创建的项目中,只需要按照以下步骤安装相应的预处理器依赖: 1:打开命令行工具,进入项目目录。
前言 在css3到来之前,都是用js来操作dom元素,计算位置,大小,形成瀑布流布局。但是有了css3之后,一切实现起来就太简单了,没有复杂的逻辑,轻松的几行样式代码就可以搞定。...模板(jade)的,可以先去了解一下。...其实看大致也就懂了,就是循环多个元素,没有复杂的逻辑。...: flex更科学,模板不需要2层循环,更简洁明了。...演示地址: CSS 实现瀑布流布局(display: grid) 总结 通过,这3种CSS瀑布流布局,你更喜欢哪一种呢? 个人更喜欢column-count,看起来更加清晰,容易理解,代码量也很少。
安装完成上述指令之后,我们可以检查一下安装的express是否能用 express --version 接着我们就可以创建项目了,在创建项目的时候可以先express -h来查看一下,express命令的参数...|pug|twig|vash) (defaults to jade) --no-view use static html instead of view engine...,我们创建的项目模板引擎使用的是jade,个人感觉ejs[2]模板引擎比较好用,所以我们可以通过修改模板引擎的方式创建项目 express backend -e 创建好项目之后,我们express骨架已经搭建好了...我们在执行node文件的时候,如果修改了node文件,每次执行都需要重新启动项目才行,为了方便我们可以使用nodemon来监听项目的改动,不再需要重复启动项目,这么方便的东西用起来能不香吗??...实际上在真正的开发环境中,如果我们这么设置允许所有的的源都可以访问会有很多问题,我们可以使用cors[4]来代替它 当然如果在生产中我们采用nginx部署之后,就不存在跨域了?
/src/a.js' 3 }; 数组: 传入一个路径数组将创建多个主入口,适用于将多个依赖文件导入一个chunk时可以这么操作。 const config = { entry: ['....使用插件只需要require()它,然后再添加到plugin模块中,通常情况下多数插件是可自定义的,所以想在一个配置文件中使用不同配置功能的插件,必须通过new创建一个新的实例。)...(通过配置resolve来解析文件路径,reslove中可以配置使用专属插件。)...激活后装备栏增加3,自身移速减20% (通过配置module处理项目中的不同类型的模块。) rules匹配规则数组(最常用) 创建模块时,匹配请求的规则数组。通过规则能够修改模块的创建方式。...模板(Templating) html-loader 导出 HTML 为字符串,需要引用静态资源 pug-loader 加载 Pug 模板并返回一个函数 jade-loader 加载 Jade 模板并返回一个函数
/src/a.js' }; 数组: 传入一个路径数组将创建多个主入口,适用于将多个依赖文件导入一个chunk时可以这么操作。 const config = { entry: ['....它与modules模块配合使用,通过配置module.rules实现。loader相当于其他工具中的task(任务)。)...使用插件只需要require()它,然后再添加到plugin模块中,通常情况下多数插件是可自定义的,所以想在一个配置文件中使用不同配置功能的插件,必须通过new创建一个新的实例。)...(通过配置resolve来解析文件路径,reslove中可以配置使用专属插件。)...激活后装备栏增加3,自身移速减20% (通过配置module处理项目中的不同类型的模块。) rules匹配规则数组(最常用) 创建模块时,匹配请求的规则数组。通过规则能够修改模块的创建方式。
在Node.js后端开发中,使用官方提供的http模块可以创建一个Web服务器应用,但是此模块非常底层,要处理各种情形,比较繁琐,为此便有了 Express ,它是第三方模块,是一个基于Node.js的...)定义的,router代表一个由express.Router()创建的对象,在路由对象中可定义多个路由规则,而当我们的路由只有一条规则时,可直接用一个回调作为简写,也可直接使用app.get( ) 或app.post...终结请求-响应循环。 (4). 调用堆栈中的下一个中间件。 如果当前中间件没有终结请求-响应循环,则必须调用 next() 方法将控制权交给下一个中间件,否则请求就会挂起。...在页面的引入: ? 解析生成的HTML如下: ? (11). extends 继承 Jade 中使用 extends 来继承代码片段,与 include 引用代码段不同,继承可以修改代码片段。...模板引擎ejs的使用 EJS是一个JavaScript模板库,用来从JSON数据中生成HTML字符串,它俱有缓存功能,能够缓存已经解析好的html模版,相比jade你可以更容易地通过EJS模板代码看懂你的代码
next参数,而这个next也是一个函数,它表示函数数组中的下一个函数,如果当前中间件函数没有结束请求/响应循环,那么它必须调用 next(),以将控制权传递给下一个中间件函数。...你可以通过 npx (包含在 Node.js 8.2.0 及更高版本中)命令来运行 Express 应用程序生成器。...-v, --view 添加对视图引擎(view) 的支持 (ejs|hbs|hjs|jade|pug|twig|vash) (默认是 jade 模板引擎)...此应用将在当前目录下的 myapp 目录中创建,并且设置为使用 Pug 模板引擎(view engine): $ express --view=pug myapp create : myapp...├── index.pug └── layout.pug 7 directories, 9 files 通过 Express 应用生成器创建应用只是众多方法中的一种。
首先使用jade需要在node_moudles中安装jade npm i jade --save 在nodejs文件中使用jade无需像原生一样使用require("jade")引入,但需要一下设置...ul 上面小例子看到呈递变量很简单 使用#{变量名称} 循环: 接下来我们看一下如何实现for循环 html(lang="en") head title jade模板引擎页面 body...ul each job in jobs li= job 这里的循环使用的是 each .... ...in..... job指传递数组中的一个元素,而jobs是传递的整个数组,循环后job内弄填充每个li 当然这个jobs数组是在nodejs内,我们也可以将这个数组直接在jade文件中声明 -var jobs...in..进行渲染数据,当然也是可以加-在jade进行声明数据; 整个渲染出html效果如下 ? 总之jade的效率还是很棒的;习惯之后会爱不释手 ? ,今天这个jade的简单应用介绍到这里!
上篇文章简单介绍了一下loader API,那么除了我们常用的css-loader,sass-loader,style-loader,url-loader,vue-loader之外,还有哪些loader呢,我们一起来梳理一下...fengari 加载 Lua 代码 elm-webpack-loader 像加载 JavaScript 一样加载 Elm 模板 html-loader 将 HTML 导出为字符串,需要传入静态资源的引用路径 pug-loader...加载 Pug 和 Jade 模板并返回一个函数 markdown-loader 将 Markdown 编译为 HTML react-markdown-loader 使用 markdown-parse...在将图标字体或 CSS 动画应用于 SVG 时,此功能非常实用。...twig-loader 编译 Twig 模板并返回一个函数 remark-loader 通过 remark 加载 markdown,且支持解析内容中的图片 样式 style-loader 将模块导出的内容作为样式并添加到
在很多 Vue 项目中,我们使用 Vue.component来定义全局组件,紧接着用 new Vue({ el: '#container '}) 在每个页面内指定一个容器元素,然后对组件进行引用。...但当在更复杂的项目中,或者你的前端完全由 JavaScript 驱动的时候,下面这些缺点将变得非常明显: 全局定义 (Global definitions) 强制要求每个 component 中的命名不得重复...组件化时,CSS 明显被遗漏 没有构建步骤 (No build step) 限制只能使用 HTML 和 ES5 JavaScript,而不能使用预处理器,如 Pug (formerly Jade) 和...Pug,Babel (with ES2015 modules),和 Stylus。...在现代 UI 开发中,我们已经发现相比于把代码库分离成三个大的层次并将其相互交织起来,把它们划分为松散耦合的组件再将其组合起来更合理一些。
{ loader: 'less-loader' } ] } ] } Loader应用顺序是less-loader, css-loader, style-loader P.S.除了通过配置文件来指定.../my-img.png' Plugins Loader不够用/不好用或者做不到的时候,通过自定义插件来扩展 例如extract-text-webpack-plugin用来改变样式规则被打进bundle的...Loader是用来转换依赖资源的函数,这个函数能够通过Loader API拿到bundle过程中的一些上下文信息(比如目标原始资源内容或前一个loader的输出、loader配置项等),以及调用Webpack...css-loader:收集App依赖的CSS,并在运行时通过标签插入页面 file-loader:生成多文件的方式(奇怪的是这个事情竟然也由Loader来做,而不是主配置支持) file-loader...:加载Pug模板,返回个函数 jade-loader:加载Jade模板,返回个函数 markdown-loader:把Markdown编译成HTML react-markdown-loader:用markdown-parse
我们将这里的 landspace 修改为我们的目录名(即是 Cxo) 修改完毕之后,在 hexo 中打开 cmd,一次输入 hexo clean 、 hexo g 、hexo s(清理,重新升成,开启)...Error 这里可能会出现一个问题 Error: xtends includes/layout.pug block content include includes/recent-posts.pug...1、发布在 GitHub 上 我们直接新建库,点击 New repostiory 这里需要注意一下,Repository的名字是必须按这种格式来编写!!!...Github用户名 .github.io 创建成功之后这个库是空的~~ 接下来我们就开始将本地hexo博客上传到github上!!...我们在本地博客中打开cmd 输入一下命令cnpm install --save hexo-deployer-git 安装 hexo-deployer-git 插件包 想要发布到Github上我们需要对本地
领取专属 10元无门槛券
手把手带您无忧上云