1 Star 2 Fork 0

a07061625 / nk

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
BSD-3-Clause

框架

介绍

  • 前端服务端渲染框架,常驻内存,提升用户体验
  • 基础环境为nodejs
  • 处理框架为koa2
  • 渲染模板为nunjucks

nginx配置

server {
    ...
    if ($request_method !~ ^(GET|OPTIONS|HEAD)$ ) {
        return 403;
    }
    ...
}

环境

node(v10.15.3+)

wget https://nodejs.org/dist/v10.15.3/node-v10.15.3-linux-x64.tar.xz
tar -xvJf node-v10.15.3-linux-x64.tar.xz
mv node-v10.15.3-linux-x64/ /usr/local/nodejs
mkdir /home/logs/nodeforever
vim /etc/profile
    export NODE_HOME=/usr/local/nodejs
    export PATH=$PATH:$NODE_HOME/bin
source /etc/profile
/usr/local/nodejs/bin/npm install -g cnpm --registry=https://registry.npm.taobao.org

全局环境(npm install -g)

  • nodemon: v1.18.11+
  • forever: v1.0.0+
  • webpack: v4.30.0+
  • webpack-cli: v3.3.1+

项目环境(npm install --save)

  • async: v3.2.0+
  • axios: v0.18.1+
  • eventproxy: v1.0.0+
  • html-minifier: v4.0.0+
  • koa: v2.11.0+
  • koa-router: v7.4.0+
  • lodash: v4.17.15+
  • lru-cache: v5.1.1+
  • nunjucks: v3.2.1+
  • utility: v1.16.3+

webpack环境(npm install --save)

  • autoprefixer: v9.7.6+
  • bundle-loader: v0.5.6+
  • clean-webpack-plugin: v2.0.2+
  • css-loader: v2.1.1+
  • cssnano: v4.1.10+
  • file-loader: v3.0.1+
  • glob: v7.1.6+
  • html-webpack-plugin: v3.2.0+
  • html-withimg-loader: v0.1.16+
  • less: v3.11.1+
  • less-loader: v5.0.0+
  • mini-css-extract-plugin: v0.6.0+
  • mkdirp: v0.5.5+
  • node-sass: v4.14.1+
  • optimize-css-assets-webpack-plugin: v5.0.3+
  • peer: v0.2.10+
  • postcss-loader: v3.0.0+
  • promise-loader: v1.0.0+
  • purgecss-webpack-plugin: v2.2.0+
  • purify-css: v1.2.5+
  • qs: v6.9.4+
  • sass-loader: v7.3.1+
  • style-loader: v0.23.1+
  • ttf-loader: v1.0.2+
  • uglifyjs-webpack-plugin: v2.2.0+
  • url-loader: v1.1.2+
  • webpack: v4.43.0+
  • webpack-cli: v3.3.11+

文件介绍

推荐将nk-frame目录和nk-static目录作为一个单独的项目统一维护管理

  • dist: webpack打包存放文件目录
  • nk-project: 项目公共库目录,目录名不可变
  • nk-frame: 框架公共库目录
  • nk-static: 框架公共静态资源目录
  • node_modules: node模块目录
  • static: 静态资源目录
  • views: 视图文件目录
  • helper_manager.sh: 项目管理脚本
  • nka01.js: 项目服务脚本,命名规则: nk+3位由数字和字母组成的字符串
  • nodemon.json: nodemon配置
  • package.json: 项目配置
  • postcss.config.js: postcss配置脚本
  • webpack.base.js: webpack基础配置
  • webpack.dll.js: webpack预编译配置
  • webpack.production.js: webpack生产环境配置

管理命令

初始化项目

sh helper_manager.sh init

启动服务

sh helper_manager.sh start
sh helper_manager.sh start 1 //刷新并启动服务

关闭服务

sh helper_manager.sh stop

重启服务

sh helper_manager.sh restart
sh helper_manager.sh restart 1 //刷新并重启服务

刷新服务(仅刷新项目文件,没有重启服务)

sh helper_manager.sh refresh

预编译资源模块

sh helper_manager.sh dll

webpack打包压缩(生产环境)

sh helper_manager.sh build

js代码格式化

sh helper_manager.sh format

更新框架静态资源

sh helper_manager.sh static

其他

插件使用

moment

import moment from 'moment'
import 'moment/locale/zh-cn'

moment.locale('zh-cn');
let momentStr = moment().subtract(10, 'days').calendar();
console.log('现在时间:', momentStr);
BSD 3-Clause License Copyright (c) 2019, a07061625 All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

简介

基于node和koa2的服务端渲染前端框架 展开 收起
NodeJS 等 5 种语言
BSD-3-Clause
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
NodeJS
1
https://gitee.com/a07061625/nk.git
git@gitee.com:a07061625/nk.git
a07061625
nk
nk
master

搜索帮助