zoukankan      html  css  js  c++  java
  • 敲代码需要一丝不苟,Node静态化,ejs文件里多了一条外联下的Bug问题

    这个Bug是昨天晚上遇到,去SF社区提了出来,估计是太晚了,没人回答,今天早上两个回答。

    第一个人回答主要是解决双重回调,也怪我,我刚开始也以为是双重回调的问题,因为最近看的网上资料全是Promise和async/await解决回调问题。我想我真不会遇到了?其实不是。

    第二个大佬认真看了我贴的代码,然后一步步在评论区里沟通,最后说到了为什么css和头像文件会在请求req里出现,估计是我的静态化问题。然后我就把注意力转过来了,去看user.ejs,上来就发现了一个问题,我静态路由是app.use("/avatar",express.static("./avatar"));,在ejs里面传参还是要加上avatar这个虚拟路径的,我没加。 =-=,然后css和js脚本都是在public的,我直接静态app.use(express.static("./public"));,这个意思就是当用户不管访问你这个网站的什么东西,页面,资源,接口等等,都会优先从你的本地的public文件夹里先找,找的话就展示,找不到就继续走下面的路由,所以这个前面就不用加虚拟路径了,可是运行还是报那个错误,avatar undfined,这位大佬也提到了我req里为什么会有css请求啊,然后去看了public,我把jumbotron.css是放在css文件外面,静态化之后相当于在根目录,因为这个css里就放了body的两个样式,当时没多想放在直接放在public里,没有跟public的css文件放在一起,然后我又去看了ejs里这个css的外联,只有这一个css文件发生了请求,那么这个css的静态化是失败的,,我老老实实把这个css放在css文件夹,改成了,Bug解决,拍手。。。=-=

    估计是我一开始就在public下放着,所以我就直接"/",可能是有的链接写成是"/css"了。虽然不是什么高深的bug,但是仅从Node的这一点报错信息,也还是需要慢慢来排查。

  • 相关阅读:
    10.13_extjs,combox,效率为什么这么低
    10.12_win8风格,把专业书籍当小说看,SQLite
    10.11_魔兽世界
    10.10_魔兽账号,OSC代码托管演示,研究SQL别忘记了,git
    10.09_命名:包名、类名、方法名
    10.08_逛逛OSC
    国庆第七日(2014年10月7日17:55:56),随手记,一些关注的OSC软件,花生壳
    国庆第六日(2014年10月6日11:51:15),node-webkit,理财产品
    国庆第五日2014-10-05 10:03,电子书
    truffle框架快速开发合约步骤
  • 原文地址:https://www.cnblogs.com/zhangmingzhao/p/8086888.html
Copyright © 2011-2022 走看看