当前位置: 首页 > news >正文

编程和做网站那个号网站的特征包括哪些

编程和做网站那个号,网站的特征包括哪些,百度统计网站概况,网站设计 中国风文章目录 1 字符串转为时间对象——Moment2 记账本实例优化 1 字符串转为时间对象——Moment Moment.js中文网:https://momentjs.cn/docs/#/parsing/。 npm install moment // 安装moment var moment require(moment); // require moment().format(); 2 记账本实…

文章目录

  • 1 字符串转为时间对象——Moment
  • 2 记账本实例优化

1 字符串转为时间对象——Moment

Moment.js中文网:https://momentjs.cn/docs/#/parsing/。

npm install moment // 安装moment
var moment = require('moment'); // require
moment().format(); 

2 记账本实例优化

  • bin文件夹下www文件:导入MongoDB数据库。
#!/usr/bin/env node
//导入 db 函数
const db = require('../db/db');//调用 db 函数
db(() => {/*** Module dependencies.*/var app = require('../app');var debug = require('debug')('accounts:server');var http = require('http');...
})
  • AccountModel.js:
//导入 mongoose
const mongoose = require('mongoose');
//创建文档的结构对象
//设置集合中文档的属性以及属性值的类型
let AccountSchema = new mongoose.Schema({//标题title: {type: String,required: true},//时间time: Date,//类型type: {type: Number,default: -1},//金额account: {type: Number,required: true},//备注remarks: {type: String }
});//创建模型对象  对文档操作的封装对象
let AccountModel = mongoose.model('accounts', AccountSchema);//暴露模型对象
module.exports = AccountModel;
  • Index.js
var express = require('express');
var router = express.Router();
//导入 lowdb
const low = require('lowdb')
const FileSync = require('lowdb/adapters/FileSync')
const adapter = new FileSync(__dirname + '/../data/db.json');
//获取 db 对象
const db = low(adapter);
//导入 shortid
const shortid = require('shortid');
//导入 moment
const moment = require('moment');
const AccountModel = require('../models/AccountModel');//测试
// console.log(moment('2023-02-24').toDate())
//格式化日期对象
// console.log(moment(new Date()).format('YYYY-MM-DD'));//记账本的列表
router.get('/account', function(req, res, next) {//获取所有的账单信息// let accounts = db.get('accounts').value();//读取集合信息AccountModel.find().sort({time: -1}).exec((err, data) => {if(err){res.status(500).send('读取失败~~~');return;}//响应成功的提示res.render('list', {accounts: data, moment: moment});})
});//添加记录
router.get('/account/create', function(req, res, next) {res.render('create');
});//新增记录
router.post('/account', (req, res) => {//查看表单数据  2024-06-06  =>  new Date()//2024-06-06  =>  moment  =>  new Date()//console.log(req.body);//修改 req.body.time 的值//req.body.time = moment(req.body.time).toDate();//插入数据库AccountModel.create({...req.body, // ES6语法,所有属性的值//修改 time 属性的值time: moment(req.body.time).toDate()}, (err, data) => {if(err){res.status(500).send('插入失败~~');return}//成功提醒res.render('success', {msg: '添加成功哦~~~', url: '/account'});})
});//删除记录
router.get('/account/:id', (req, res) => {//获取 params 的 id 参数let id = req.params.id;//删除AccountModel.deleteOne({_id: id}, (err, data) => {if(err) {res.status(500).send('删除失败~');return;}//提醒res.render('success', {msg: '删除成功~~~', url: '/account'});})
});module.exports = router;
  • Index.html
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>Document</title><link href="https://cdn.bootcdn.net/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.css" rel="stylesheet" /><style>label {font-weight: normal;}.panel-body .glyphicon-remove {display: none;}.panel-body:hover .glyphicon-remove {display: inline-block}</style>
</head>
<body><div class="container"><div class="row"><div class="col-xs-12 col-lg-8 col-lg-offset-2"><div class="row"><h2 class="col-xs-6">记账本</h2><h2 class="col-xs-6 text-right"><a href="/account/create" class="btn btn-primary">添加账单</a></h2></div><hr /><div class="accounts"><% accounts.forEach(item=> { %><div class="panel <%= item.type=== -1 ? 'panel-danger' : 'panel-success'  %>"><div class="panel-heading"><%= moment(item.time).format('YYYY-MM-DD') %></div><div class="panel-body"><div class="col-xs-6"><%= item.title %></div><div class="col-xs-2 text-center"><span class="label <%= item.type=== -1 ? 'label-warning' : 'label-success'  %>"><%= item.type===-1 ? '支出' : '收入' %></span></div><div class="col-xs-2 text-right"><%= item.account %> 元</div><div class="col-xs-2 text-right"><a class="delBtn" href="/account/<%= item._id %>"><span class="glyphicon glyphicon-remove" aria-hidden="true"></span></a></div></div></div><% }) %></div></div></div></div>
</body>
<script>//获取所有的 delBtnlet delBtns = document.querySelectorAll('.delBtn');//绑定事件delBtns.forEach(item => {item.addEventListener('click', function (e) {if (confirm('您确定要删除该文档么??')) {return true;} else {//阻止默认行为e.preventDefault();}});})
</script>
</html>
http://www.yayakq.cn/news/961538/

相关文章:

  • 网站开发里程碑湖南省建筑信息网
  • 网站 点击率搜索引擎营销的方法
  • 网站专题页面案例建站知乎
  • 网站模板库 下载wordpress如何cdn加速
  • 免费搭建网站的软件电脑如何下载网页视频文件
  • 保定高端网站建设天津企业网站建站模板
  • 成都网页平面设计培训班达州seo排名
  • 网站开发的常用流程网站前台模块包括什么软件
  • 做网站云主机沈阳做网站优化
  • 制作大型网站网站空间租
  • 统计局网站集约化建设方案wordpress火车头插件
  • 建立网站的工具重庆网页设计
  • 程序员做项目的网站手机制作音乐app
  • 备案查询网站家装效果图网站
  • 班级网站主页怎么做wordpress评论后显示不出来
  • 网站开发与硬件合同wordpress打开慢排查
  • 花垣网站建设做封面的网站在哪里
  • 兼职网站编辑四川省住建厅特种作业证报名
  • 医学关键词 是哪个网站做网站建设工作职责
  • 海南手机网站建设公司免费友情链接网页
  • 网站建设优化方法申请域名空间
  • 宁波建站模板厂家做网站app公司前景
  • 企业网络推广网站建设进行网站建设有哪些重要意义
  • 高校门户网站系统wordpress的xmlrpc协议
  • 工作室建设与管理思路与设想沈阳做网站优化
  • 网站建设一屏式网站模板网站代码
  • 山东聊城网站设计厦门茶叶公司 网站建设
  • 医院网站建设策划案模板个人网站建设开题报告
  • 免费的商城网站电商网站域名
  • 茂名专业做网站襄州区住房和城乡建设局网站