1.引用semantic 中的 menu 時menu不能隱藏,不是那邊的script腳本問題,那麼就是menu的問題,看了半小時沒發現哪裏有錯,刪到就剩menu發現my:<menu> semantic:<div class='menu'>
2.定位元素的樣式big.ui.buttons無效,.big.ui.buttons有效div要.
3.404:瀏覽器地址錯誤signup->singup
4.登入後退回重新刷新signup內存泄露警告
5.semantic UI dropdown 無效發現要加JavaScript腳本,但文檔沒說明只有HTML的佈局圖
6.express-session 中的 saveUninitialized : true和false切換無效。後面覺得肯定是哪裏代碼加載時用了session,果然
app.use((req, res, next) => {
res.locals.user = req.session.user
res.locals.success = req.flash('success').toString()
res.locals.error = req.flash('error').toString()
next()
})
7.傳值時因爲有error未處理所以傳不過去
app.use(function(req, res, next) {
- var err = new Error('Not Found');
- err.status = 404;
- next(err);
-});
-
-// error handler
-app.use(function(err, req, res, next) {
- // set locals, only providing error in development
- res.locals.message = err.message;
- res.locals.error = req.app.get('env') === 'development' ? err : {};
-
- // render the error page
- res.status(err.status || 500);
- res.render('error');
-});
錯誤信息給異常了,沒傳到signup
8.throw new TypeError(‘Router.use() requires middleware function but got a ’ + gettype(fn));
拋出新的類型錯誤(Router.use() 需要中間件函數但是但是得到的是gettype(fn))
const express = require('express')
const router = express.Router()
router.get('/', (req, res) => {
req.session.user = null
req.flash('success', '登出成功')
res.redirect('/article')
})
忘記exportmodule.exports = router
9.TypeError: User.findOne(…).addCreateAt is not a function
.addCreateAt單詞打錯了
10.Cannot GET /posts/5a3a4040ac988e0cc7034da9
地址沒錯,請求方式沒錯,方法錯了,寫個demo一跑就出
11.測試代碼打印一直有問題,發現res.redirect(‘back’) :
A back redirection redirects the request back to the referer, defaulting to / when the referer is missing.
The HTTP referer (originally a misspelling of referrer[1]) is an HTTP header field that identifies the address of the webpage (i.e. the URI or IRI) that linked to the resource being requested.
重新設置頭部信息
打印res.text有些奇怪不知道爲什麼
<html>
<head>
<meta charset="utf-8">
<title>myblog</title>
<link rel="stylesheet" href="//cdn.bootcss.com/semantic-ui/2.1.8/semantic.min.css">
<link rel="stylesheet" href="/css/style.css">
<script src="//cdn.bootcss.com/jquery/1.11.3/jquery.min.js"></script>
<script src="//cdn.bootcss.com/semantic-ui/2.1.8/semantic.min.js"></script>
</head>
<body>
<div class="nav">
<div class="ui grid">
<div class="four wide column"></div>
<div class="eight wide column">
<a href="/posts"><h1>myblog</h1></a>
<p>my first blog</p>
</div>
</div>
</div>
<div class="nav-setting">
<div class="ui buttons">
<div class="ui floating dropdown button">
<i class="icon bars"></i>
<div class="menu">
<a class="item" href="/signin">登錄</a>
<a class="item" href="/signup">註冊</a>
</div>
</div>
</div>
</div>
<div class="ui grid">
<div class="four wide column"></div>
<div class="eight wide column">
</div>
</div>
<script type="text/javascript">
$(document).ready(function () {
// 點擊按鈕彈出下拉框
$('.ui.dropdown').dropdown();
// 鼠標懸浮在頭像上,彈出氣泡提示框
$('.post-content .avatar-link').popup({
inline: true,
position: 'bottom center'
});
})
</script>
</body>
</html>
重定向到地址,res.text有網頁的全部信息
<html>
<head>
<meta charset="utf-8">
<title>myblog</title>
<link rel="stylesheet" href="//cdn.bootcss.com/semantic-ui/2.1.8/semantic.min.css">
<link rel="stylesheet" href="/css/style.css">
<script src="//cdn.bootcss.com/jquery/1.11.3/jquery.min.js"></script>
<script src="//cdn.bootcss.com/semantic-ui/2.1.8/semantic.min.js"></script>
</head>
<body>
<div class="nav">
<div class="ui grid">
<div class="four wide column"></div>
<div class="eight wide column">
<a href="/posts"><h1>myblog</h1></a>
<p>my first blog</p>
</div>
</div>
</div>
<div class="nav-setting">
<div class="ui buttons">
<div class="ui floating dropdown button">
<i class="icon bars"></i>
<div class="menu">
<a class="item" href="/signin">登錄</a>
<a class="item" href="/signup">註冊</a>
</div>
</div>
</div>
</div>
<div class="ui grid">
<div class="four wide column"></div>
<div class="eight wide column">
<div class="ui error message">
<p>名字請限制在 1-10 個字符</p>
</div>
</div>
</div>
<div class="ui grid">
<div class="four wide column"></div>
<div class="eight wide column">
<form class="ui form segment" method="post" enctype="multipart/form-data">
<div class="field required">
<label>用戶名</label>
<input placeholder="用戶名" type="text" name="name">
</div>
<div class="field required">
<label>密碼</label>
<input placeholder="密碼" type="password" name="password">
</div>
<div class="field required">
<label>重複密碼</label>
<input placeholder="重複密碼" type="password" name="repassword">
</div>
<div class="field required">
<label>性別</label>
<select class="ui compact selection dropdown" name="gender">
<option value="m">男</option>
<option value="f">女</option>
<option value="x">保密</option>
</select>
</div>
<div class="field required">
<label>頭像</label>
<input type="file" name="avatar">
</div>
<div class="field required">
<label>個人簡介</label>
<textarea name="bio" rows="5"></textarea>
</div>
<input type="submit" class="ui button fluid" value="註冊">
</form>
</div>
</div>
<script type="text/javascript">
$(document).ready(function () {
// 點擊按鈕彈出下拉框
$('.ui.dropdown').dropdown();
// 鼠標懸浮在頭像上,彈出氣泡提示框
$('.post-content .avatar-link').popup({
inline: true,
position: 'bottom center'
});
})
</script>
</body>
</html>
發現這問題主要是奇怪爲什麼test中有一條會對,對比後發現的
12.
想保留session發現無限的重定向。debug發現了路由中間件弄的無限回調
13.
表單中修改了名字,還是說未定義,但是單詞都是對的,對比了以前的也一樣,打印了消息發現名字沒用上,找網頁發現沒有刷新,因爲重新提交表單時頁面不會刷新,要重開。
14.
使用提出的函數返回是promise,說then未定義。發現=》{}不能返回=》能返回