myblog 中的bug处理

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未定义。发现=》{}不能返回=》能返回

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章