egg学习——简单实例
来源:互联网 发布:windows窗口程序组成 编辑:程序博客网 时间:2024/06/15 00:00
最近在储备egg,因为网上的资源太少了,自己也是纠结了好几天,解决了无数的错误,才排除万难完成了这个小demo。
安装就不再赘述了,下面直接介绍:该demo的功能是将页面输入的内容保存到数据库中
- 该demo使用的模板引擎为nunjucks,又因为要讲文件保存到数据库中所以需要引入MySQL的插件,于是config/plugin.js文件内容如下
//config/plugin.jsexports.nunjucks = { enable: true, package: 'egg-view-nunjucks'};exports.mysql = { enable: true, package: 'egg-mysql',};
- config/config.default.js文件在原来的基础上更改如下
module.exports = appInfo => { const config = { view: { defaultViewEngine: 'nunjucks', mapping: { '.tpl': 'nunjucks', }, }, mysql: { client: { host: 'localhost', port: '3306', user: 'root', password: '', database: 'test', }, app: true, agent: false, } }; config.keys = appInfo.name + '_1489393729180_4559'; return config;};
app文件夹中的文件,app/public文件夹中存放js或者css等静态文件
- app/router.js
module.exports = app => { app.get('/', 'home.index'); app.get('/add/:data','home.add');};
- app/controller/home.js文件
module.exports = app => { class HomeController extends app.Controller { * index() { yield this.ctx.render('index.tpl'); } * add() { const data = this.ctx.params.data; const result = yield this.service.mysql.add(data); this.ctx.body = 'success'; } } return HomeController;};
- app/view/index.tpl
<html> <head> <title>Egg Demo</title> <link rel="stylesheet" href="/public/css/bootstrap.min.css"> </head> <body class="container"> <input type="text"><br /> <button class="btn btn-success">上传到数据库</button> <script src="/public/js/jquery.min.js"></script> <script src="/public/js/index.js"></script> </body></html>
- app/public/js/index.js
$("button").click(function(){ var data= $("input").val(); if(data){ $.ajax({ type:'get', url:'/add/'+data, success:function(data){ if(data == 'success'){ alert('上传成功!'); } } }); }});
- app/service/mysql.js
module.exports = app => { return class User extends app.Service { * add() { const data = this.ctx.params.data; const result = yield this.app.mysql.insert('demo',{'data':data}); if(result.serverStatus == 2){ return "success"; }else{ return "fail"; } } }};
以上既是这个简单demo的全部代码,如果错误请指正
2 0
- egg学习——简单实例
- egg-hunter之——minalic开源WEB服务器学习
- python egg学习笔记
- Python egg学习笔记
- EGG
- python程序打包为egg——setuptools模块
- Spring学习笔记——Spring MVC的简单实例
- Hibernate学习篇06——onetomany简单实例
- Hibernate学习篇07——manytoone简单实例
- hibernate学习之二——部署(简单实例)
- 寻找复活节彩蛋egg huting 学习
- python 打包(发行)egg 学习笔记
- JSF——简单实例
- python整理二十七——egg文件制作与安装
- python整理二十七——egg文件制作与安装【仅提供链接地址】
- 简单创建scrapy项目并生成egg包
- prototype 学习之简单实例
- 简单实例学习autotools工具
- Python学习笔记 --- pycharm修改远程 Git 上项目的代码
- ApacheBench 并发测试
- 使用花生壳将内网地址映射到外网
- Using Python to show the test data
- 谈UE4高级渲染:动态光照迭代快
- egg学习——简单实例
- 编译好的QT程序在其他没有安装QT的机器上会出现图标和图片无法正常显示的问题。
- 使用Crontab定时执行Spark任务
- 阿里前端编程题1
- Android URL类的使用
- Android Studio 分析内存泄漏-内存分析工具MAT简单应用
- Win8.1+VS2010环境下Qt5.6.2动态编译
- SE for Android 系列之整体概要(二)
- filter与interceptor的区别总结