在 theme-example 下的配置文件 _config.yml,在其中添加需要配置的字段。然后可以通过 theme 这个变量来拿到该配置文件中的配置。...在 css 文件夹中创建 style.styl,编写一些基础的样式,并把所有样式 import 到这个文件。所以最终编译之后只会有 style.css 一个文件。...Hexo的数据DB扩展查询 我们已经知道,Hexo已经为我们预先定义了很多常用的变量供我们使用,具体可以在 Hexo | 变量 查询。但是如果系统提供的变量数据不能满足我们的要求,那我们该怎么办呢?...其实Hexo所有的文章分类标签等等变量信息,在编译成本地静态文件之前,都是本地存储在一个db.json中的,相当于小型的本地数据库,Hexo在运行阶段,所有的数据相关操作其实都是在这个小型数据库上进行操作...总结 其实说白了,Hexo就是把那些 Markdown 文件,按照我们编写的对应布局模板,填上对应的数据生成 HTML 页面,然后在编译的过程中将JS/CSS等文件引入HTML,然后生成每个页面的对应HMTL
) 3.修改app.js文件并运行 在testWebApp根目录下找到app.js并增加端口监听,在sublime中Ctrl+B运行 app.listen(8100,function(){...这里重点看看index.ejs ejs结尾的文件就是模版文件,可以看到在文件中我们用了三种标签方式(这种标签方式有过其它web开发经验的应该很好看懂) 1. 这个标签在接到收到title...: 'Express'时,从显示效果来看,他直接输出HTML标签到页面上,输出的是转义后的变量值 2. 而这个标签,从显示效果上看,他没有直接输出HTML代码到页面上...,输出的是没有转义后的变量值 3. 而这个标签,从显示上看,他循环了出来参数中的值,标签中是javascript逻辑代码,注意括号的开闭合 在这里,简单认识一下ejs,下面开始看看express...原因就是app.js中的设置: app.set('views', path.join(__dirname, 'views')); app.set('view engine', 'ejs'); 而这两个参数在
<%= : 输出数据到模版(输出是转义Html标签) <%- : 输出非转义的数据到模版 :如果数据是liugehou ,那么输出的就是这样的格式。...第五章 组件模板开发及脚手架组件初始化功能支持 5-1 慕课乐高组件库模板开发 维护组件库发布至npm,然后在mongodb数据库中进行配置。...慕课乐高组件库,在发布到npm包时,安装出现问题,问题原因是 package.json中,需要将 “files”:[‘dist’] 这行代码去除,这是因为files这里限定了上传发布到npm后只有.../utils’) 支持加载文件 js json node mjs 加载其它类型 require执行流程 我们在调试这行代码的时候,在执行栈中可以看到,之前也执行了很多代码,这里的流程以及上面分析的使用场景...require为什么会将非js/json/node文件视为js进行加载 require源码 我们从 require(‘./ejs’) 这行代码在webStorm中开始调试。
在这种情况下,你需要以一个装有所有需要传递对象的本地变量结束。...如果为 false 则局部数据会储存在 locals 对象中。 rmWhitespace 移除所有可以安全移除的空白字符,包含前导和尾后的空白字符。...例如,你在./views/users.ejs中包含./views/user/show.ejs,你应该使用。...在你顶级数据对象中的变量都可以用于所有的包含,而局部变量需要传递进来。 注意:仍然支持包含预处理指令()。.../ejs.js 或者 ./ejs.min.js。 选择其一包含到你的页面中,并且使用 ejs.render(str)。
将数据放到模板中,转为HTML数据 let html = ejs.render(template, data); // 将数据在浏览器进行展现 res.send(html);})app.listen...代码解析: ejs.render()方法:用于将数据(data)在指定的模板(template)中进行展示,生成HTML :用于将数据的属性在模板中进行输出 注意:数据的类型需要是对象...比如,我们要将模板文件放置到html文件夹内: 1、创建html文件夹 2、将上个示例中的one.ejs移入html文件夹内 3、上示例中的demo.js添加如下代码: // 设置模板文件夹为htmlapp.set...假设你现在将html页面的内容全部删光光,依然不会阻止其显示当前时间的决心,因为此时的模板数据来自于缓存。 八、自定义闭合标记 ejs默认的闭合标记是 一般结束标签-%> 删除紧随其后的换行符
数据在名称/值对中 数据由逗号分隔 花括号保存对象 方括号保存数组 JavaScript 函数 eval() 可用于将 JSON 文本转换为 JavaScript 对象 var obj = eval...回调方式调用 数组:array对象 事件:bind\delegate\live\on----unbind\undelegate\die\off bind添加数据到...document;delegate效率最高存数据,执行需要查询;on最原始的绑定;live老版本 对象(基类object): 1.对象={属性:值,属性:值...google v8编译器都采用了JIT方式加速Javascript js:只有对象传递使用引用,ts:tsc命令编译生成js 定时器:window.settimeout 线程:work(...template模版不显示 web模版:ejs、jade Web模版引擎:服务端引擎和客户端引擎,分离数据和视图 6.html 静态URL、动态URL
', renderedTemplate); 结果是一样的。...(' ~ file', file); }) ejs 标签的含义 写毕设的时候用的是 art-template 这一个模板引擎,但是忘的差不多了,应该跟 ejs 语法差不多。...<%: script 标签,用于流程控制,不会输出在页面上 <%_: 删除其前面的空格符 <%=: 输出数据到模板(输出是转义 HTML 字符串) <%-: 输出非转义的数据到模板 <%#: 注释标签,...若字符在中括号中,则匹配。若以 ! 或 ^ 开头,若字符不在中括号中,则匹配 !(pattern|pattern|pattern) 不满足括号中的所有模式则匹配 ?...erN) 满足 1 个括号中的模式则匹配 ** 跨路径匹配任意字符 安装 npm i glob -S 匹配所有 js 文件,忽略 node_modules 下的所有文件以及 webpack.config.js
从 3.0 开始,框架底层基于 Koa 2.x 实现,兼容 Koa 的所有功能。在最新的版本中,ThinkJS全面支持ES6和ES7的语法规则。...注:如果是从 2.x 升级,需要将之前的命令删除,然后重新安装。...options 参数,有的中间件需要读取 app 相关的信息,框架在这块做了扩展,自动将 app 对象传递到中间件中。...module.exports = [ { options: { key: value } } ] 有时候需要的配置项需要从远程获取,如:配置值保存在数据库中,这时候就要异步从数据库中获取...如:支持多种数据库,支持多种模版引擎等。Adapter 一般配合 Extend 一起使用。
/volantis/source/js文件夹中 点击此按钮下载post-calendar.ejs文件放置于...../volantis/source/css文件夹中,然后在../volantis/layout/_partial/head.ejs中引入css文件,在<!...在你想让它显示的位置添加如下代码就行啦,例如我是将它放在../volantis/layout/archive.ejs中 ?...标签云 点击此按钮下载echarts.min.js文件放置于../volantis/source/js文件夹中 点击此按钮下载tag-cloud.ejs文件放置于...../volantis/source/css文件夹中,然后在../volantis/layout/_partial/head.ejs中引入css文件,在<!
2.现在基本的结果已经有了,之后就是创建数据库了 mongodb的安装 这里只介绍window的安装 在官网上下载zip,这个我装在D盘的mongodb目录下 1.在D盘中创建mongodb文件夹然后把下载的包解压后把其中的...bin文件夹拷贝到创建的mongodb文件夹中, 2.然后在mongodb文件夹中创建一个data文件夹,再在data文件夹中创建db文件夹 3.打开CMD命令行 >d: >cd mongodb\bin...接着就设计我们的数据库了 在刚才的打开的mongodb数据库中输入: >use chihuo \\创建一个叫chihuo的数据库 >db.createCollection("users") \\创建一个集合...>db.users.find() \\查询你添加的文档 再接着就是在项目中连接刚才创建的数据库了 在项目根目录下创建一个的文件夹database,然后在创建一个 db.js ? ...在app.js文件中 找到 >app.set('view engine', 'ejs'); 把它替换成: >app.set( 'view engine', 'html' ); 再用app.engine(
Koa中的get传值主要有以下两种方式: (1).键值对拼接传参,接收参数主要通过ctx.qruery获取,需要注意的是在ctx与ctx.request里均可以获得一样的结果。...模板引擎 Ejs是一个JavaScript模板引擎,用来将数据库查询的数据渲染到模板上面,实现一个动态网站。...== 'production' }); router.get('/detail', async (ctx) => { // 模拟从数据库获取的数据 let data = { name:...; } ); 注意,form表单加上enctype="multipart/form-data" 13.Koa操作MySQL数据库 MySQL模块是Node操作MySQL的引擎,可以在Node.js...Mongo最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。
下面,我们通过 纯 HTML 中 a 标签 和 通过 JS 构建 a 标签 来获取文件。 纯 HTML 中 a 标签:我们在 index.ejs 中添加 HTML 内容 <!...当然可以啦~ 通过 JS 构建 a 标签:我们更改下 index.ejs 中的 HTML 内容 <!...跨域链接 上面同源策略中两种方法- 通过 纯 HTML 中 a 标签 和 通过 JS 构建 a 标签 来获取文件,是否可以在跨域链接中使用呢? 下面我们来尝试下。...在路径 / 中渲染了模版文件,然后在路径 /download/file 中,将文件 test.txt.zip 转为可读流返回。...然后,我们在 index.ejs 渲染模版文件中,添加内容 HTML 内容: <!
) // 调用请求时的回调函数并传递响应数据 res.sendFile(path.resolve('public/error.html')) // 渲染纯 HTML 文件 // 上部引入const...五、文件上传 思想:前端表单->后端接收到文件本身->保存到服务器上->给数据库记录文件一些信息->库返回给nodejs相关信息->nodejs返回给前端 <!...('jade模板文件',{数据},{pretty:true}); //返回字符 jade语法 * 父子要缩进 * 属性:标签(key=value,key2=value) * 内容: 标签 内容其他扩展...(二)ejs 使用 let ejs = require('ejs') ejs.renderFile('ejs模板文件',{要合并到html数据},回调(err,data)) //...err:错误,null代表没有错误 // data:渲染后的字符|流 // ejs模板:后缀名为ejs的html文件 ejs语法 * ejs 结构就是html * 输出: <%= 数据名|属性名
'selector-list-comma-newline-before': 'never-multi-line', // 在媒体查询的逗号之前禁止有一换行...然而也并算完美,至少能用就行 在Sublime,Webstorm或其他编辑器IDE中使用这些工具的前提: 安装NodeJS,然后使用NPM在全局安装以下依赖包 npm i -g eslint babel-eslint...Show All Errors,在底部显示错误列表 ? 使用 ESlint-formatter进行自动修复JS ?...在webpack中的配置 参考我的webpack项目配置DEMO, 在 webpack.config.js 中传入相应的参数 ? 正式使用时autoFix会按需设置,建议修复。...解决办法也很简单,使用 ejs-loader 即可,见下方配置 另外,在生产模式 npm run build:prod的时候,提供了将检查结果输出到文件的功能(css的不支持),见 lint目录 虽然有点错乱
然后回到shell面板,执行 node test.js 命令 4.jpg 这时候我们在浏览器里打开 127.0.0.1:9527 5.jpg 可以看到title就是我们注入到模板的数据对象,我们的...四.数据库 既然是存到数据库,那么我们这里就需要加载相应数据库的 Node.js 驱动,这个实例里我们使用MySQL 首先安装 $ npm install mysql 接下来在项目里建立一个config...目录,用于存放一些配置文件,在目录里建立一个config.json文件,这个文件写数据库配置: { "host" : “你的数据库host", "port": “端口", "user": “...用户", "password" : "密码", "database" : “数据库" } 然后我们逐行写这个addMod.js接口的代码: //require var express = require...6.jpg 后记 到这一步,一个从服务,到接口,到前端的完整站点就全部完成了,但是如果我要把这套代码部署到服务器或者其他机器上,需要将全部文件打包上传,包括mudules,有没有更简单地方法,只要npm
5、下载node-mssql连接数据库驱动(进入指定的目录用npm命令执行:npm install node-mssql); 6、拷贝node-mssql文件夹到express项目的node-modules...7、使用dbHelper工具类,进行数据查询,以及EJS页面数据展示; dbHelper代码如下: /** * Created by Administrator on 2015/9/14. */ var...要使用dbHelper,在list页面中进行展现,首先配置app.js,设置Action过滤,代码如图: ?...这样配置之后,访问地址:http://xxxx/list就分发到list.js的控制器了,然后在list.js进行处理代码,list.ejs进行便签展现, list.js代码如下: var express...,第二个是参数名和数据 }; module.exports = router; list.ejs代码如下: <!
然后在实施的过程中加入的自己自己琢磨写的vueManager。 hexo的介绍和常用内容总结 hexo实现了通过markdown生成静态站点的能力,提供了高度定制化的能力。...body %>默认输出嵌入的页面 post.ejs 文章详细页 page.ejs 页面 archive.ejs 归档列表页模板,归档可以按照年份+月份实现的,list_archives显示列表 category.ejs...分类显示页 tag.ejs 标签页 hexo的模板解析,以layout.ejs为入口,所有静态页面(如:文章、页面、首页、标签、归档、分类等)都会以layout.ejs为模板。...所以每个页面的公共部分应该在写layout.ejs中(如页头、页脚等)。...插件需要入在node_moduels文件夹下,必须有.js和.package.json文件(也就是一个标准npm包即可). js文件: 'use strict' console.log('hexo-filter-list
提示 本博客为纯静态,无数据库,文章使用markdown格式,图片存在json里面,整体打包上传至服务器即可。...4、《质数的孤独》内容部分 在/themes/layout/_widget/dream.ejs文件中,使用“ ctrl+F ”快捷键定位到“ 《质数的孤独》 ”,然后自行修改标题和内容。...5、公告栏作者等内容部分 在/themes/layout/index.ejs文件中,使用“ ctrl+F ”快捷键定位到“ 公告文字栏开始 ”,然后自行修改内容。...2、个人介绍内容 在/themes/layout/about.ejs文件中,使用“ ctrl+F ”快捷键定位到“ 关于我哦 ”,然后自行个人介绍介绍。...相册 1、页面介绍 在/themes/layout/galley.ejs文件中,使用“ ctrl+F ”快捷键定位到“ itsNeko开源博客相册 ”,然后自行修改此内容。
在 config 文件夹下找到 plugin.js 文件,导出ejs 'use strict'; // 导出 ejs exports.ejs = { enable: true, package...在config 文件夹下找到 config.default.js,配置ejs 'use strict'; module.exports = appInfo => { const config...首先在app文件夹下的router.js中配置路由。...文件里的index方法 router.get('/news', controller.news.index); }; 然后在 controller 文件夹中新建路由所对应的控制器文件 new.js...,项目中一般通过service查询数据库获取 await this.ctx.render('news',{ title:'新闻页面', list
在 part1 中,我们已经着手动工并创建了首页。在这篇文章中,我们将运用所学完成剩余的页面。..._partial/article-full.ejs中。...文章标签 文章标签部分将生成一篇文章对应的所有标签:layout/_partial/article-tags.ejs 我们想要创建的是一系列的标签和链接,每个链接都将导向对应的标签页面,而标签页面会显示该标签的所有文章...我在每个标签前面加了一个#号,并且在列表前面额外加了一个图标。...与分类页类似,但是会根据标签进行筛选| tag.ejs和’category.ejs’的回退页是archive.ejs。我认为这三个页面并无太大区别,我们仅仅是在使用archive.ejs的回退页而已。
领取专属 10元无门槛券
手把手带您无忧上云