最近刚开始学习node.js,下载了几本电子书跟着学学,但是发现express框架的教程都是用jade模板或者ejs模板的,作为一个前端,我并不想用这些老旧的模板,于是用决定用ejs来加载html。配置如下(express版本为4.13.1):
app.engine('html',ejs.__express);
app.set('view engine', 'html');
这时候问题出现了,我在html里面引入css的时候浏览器报错了内容为:because its MIME type ('text/html') is not a supported stylesheet MIME type, and strict MIME checking is enabled.
最终解决方法如下:
//在app.js中用express.static()来访问public目录下的静态文件
//可以写多个express.static()来访问多个目录
app.use(express.static(path.join(__dirname, 'public')));
上面的配置其实网上很容易找到,但是我这边报错还是存在,问题出在了css引用路径上面,我一开始用的是<link rel="stylesheet" type="text/css" href="../public/css/style.css"/>,由于我们上面已经配置过了读取public目录的静态文件,所以在html里面我么只需要写public后面的路径就可以了,如下:
//html里面引入css
<link rel="stylesheet" type="text/css" href="/css/style.css"/>