Express 4.x 安装

E

最近在学习Node.js,今天尝试安装最新版的 Express 4.13.1 框架,记录一下安装过程,分享给大家学习

  • 全局安装最新版的 Express
    npm install -g express
    
  • 需要注意的是,安装到这一步后,当你直接在命令行执行express命令时会报以下错误:
    C:\Users\Administrator>express -V
    'express'不是内部或外部命令,也不是可运行的程序或批处理文件。
    
  • 这是因为4.x版本的Express已经把命令行工具 express-generator 独立出来,express-generator是用来生成Express项目结构用的,因此还需要全局安装express-generator
    npm install -g express-generator
    
  • 到这里全局安装就完成了,我们可以查看当前Express的版本
    express -V
    
  • 一切安装完毕之后就可以创建Express应用了,生成一个Express项目非常简单,只需要使用express命令再加上项目名称就可以在当前目录下生成Express应用,默认生成使用的模板引擎是jade,并切换到该目录下
    express testExpress && cd testExpress
    
    如果是使用ejs作为模板引擎:
    express -e testExpress
    
    这时候会生成Express项目的结构:
  • 接下来安装Express以及所需的module
    express项目生成时是没有自动下载依赖模块的,我们可以打开package.json查看或修改项目的默认依赖,然后执行下面命令安装依赖:
    npm install
    
  • 等待依赖安装完毕后,启动应用

    npm start
    

    也可以使用下面命令启动,其实这也是npm start的实际启动方式,如果使用 PM2supervisor 等进程管理工具启动则需要下面这种方式:

    # 使用node命令启动
    node ./bin/www
    
    # 使用PM2启动
    pm2 ./bin/www
    
    # 使用supervisor启动
    supervisor ./bin./www
    
  • 这时候在浏览器访问 http://localhost:3000/ ,如看到下图则表示安装成功

    参考 https://github.com/strongloop/express#quick-start

  • Express 4.xExpress 3.x 差别较大,如果需要安装Express 3.x,则可以指定版本安装

    npm install -g express-generator@3
    

Git 生成 SSH 公钥

G

如何生存SSH公钥

  1. 创建SSH Key
    在用户目录下查看是否有.ssh文件夹,这个文件夹位置是用于保存公钥的。如果下面已经存在id_rsaid_rsa.pub两个文件,则证明公钥已经生成,否则需要我们手动生成。

    # 创建SSH Key
    ssh-keygen -t rsa -C "youremail@example.com"
    

    这个时候会看到.ssh下会生成私钥id_rsa和公钥id_rsa.pub

  2. github配置
    在github上的设置页面中配置SSH keys,Title命名任意,将id_rsa.pub中的内容全选粘贴至Key文本框中即可。
    github上Key是可以配置多个的,假如需要在不同的计算机上推送,则需要配置不同的Key。

  3. 测试SSH Key是否配置成功

     $ ssh -T git@github.com
     Hi chuiliu! You've successfully authenticated, but GitHub does not provide shell access.
    

    出现以上则说明一切配置都OK。

Hexo优化系列

H

记下使用hexo来的一些使用经验和主题修改,针对的是默认的landscape主题。

忽略目录或文件的渲染

我们通常会用一个REMEME.md文件来描述项目,或者我们想放上一些自定义demo展示页面,但是source目录下的文件默认都会在执行hexo deploy命令时被渲染,因此Hexo也提供了忽略个别文件的配置方法:

  • 在根目录下_config.yml文件中添加以下配置,代表不渲染source目录下的README.md文件:
    skip_render: README.md
    
  • 如果想配置不渲染多个文件,则可以这样配置:
    其中,demo/**代表不渲染source/demo/下的所有目录和文件
    skip_render:
      - 'README.md'
      - 'demo/**'
    
  • 此外,配置中还可以使用正则来匹配:
    skip_render: demo/*.html
    

添加回顶部功能

  1. themes/landscape/layout/_partial/ 下新建 totop.ejs ,代码如下:
    <!-- 回顶部 -->
    <div id="to-top" style="position:fixed;bottom:30px;right:-50px;z-index:999;cursor:pointer;">
    <span style="color:#fff;background:#333;border-radius:3px;display:block;height:40px;width:40px;line-height:40px;text-align:center;">TOP</span>
    </div>
    
  2. themes/landscape/source/js/ 下新建totop.js,代码如下:
    (function($) {
     $(window).scroll(function(){
         if ($(window).scrollTop() > 200){
             $("#to-top").stop().animate({right:"5px"});
         }else{
             $("#to-top").stop().animate({right:"-50px"});
         }
     });
     $("#to-top").click(function(){
         $('body,html').animate({
             scrollTop:0
         },300);
         return false;
     });
    })(jQuery);
    
  3. themes/landscape/layout/_partial/after_footer.ejs最后添加如下代码:
    <%- partial('totop') %>
    <%- js('js/totop') %>
    

添加新浪微博组件

  1. 新浪开放平台 选择需要添加的微博组件
  2. 设置组件的样式,复制生成的代码
  3. theme/landscape/layout/_widget/下新建weibo.ejs 文件,文件内容为上一步所复制的代码
  4. theme/landscape/_config.yml 中添加如下代码:

    widges:
    - weibo
    

Hexo:为博客添加多说评论框

H

Hexo默认使用的评论框是国外比较流行的Disqus,为方便使用我们可以把评论框替换成国内比较流行的多说,我使用的是官方landscape主题,具体步骤如下:

阅读全文

Markdown语法

M

标题

如果一段文字被定义为标题,只需要在这段文字前加 # 号即可
# 一级标题
##  二级标题
### 三级标题
#### 四级标题
##### 五级标题
###### 六级标题

阅读全文

TOP