NodeJS:从Express中的第三级路由访问静态资源

时间:2017-01-24 18:08:20

标签: javascript node.js express routing

我无法从/ admin / item / [id]路由访问我的/公共文件夹资源。

这是我的文件结构:

  • app.js
  • 管理员
    • index.js
  • 公共
    • IMG
    • JS​​
    • CSS
  • 视图

/app.js

using System;
using Mono.Data.Sqlite;

namespace SQLiteDemo.Data
{
    public class SqLiteBaseRepository
    {
        public static string DbFile
        {
            get { return Environment.CurrentDirectory + "/SimpleDb.sqlite"; }
        }

        public static SqliteConnection SimpleDbConnection()
        {
            return new SqliteConnection("Data Source=" + DbFile);
        }
    }
}

/admin/index.js

app.use(express.static(path.join(__dirname, '/public')));

app.get('/', (req, res) => {
    //Access OK
    res.render('index');
});
app.use('/admin', adminRouter);

有没有办法单独设置路线?这是一个好习惯吗? 或者有没有办法使用express.static设置一般路径?

谢谢大家

1 个答案:

答案 0 :(得分:0)

定义静态资产的相对路径,例如

app.use('/static', express.static(path.join(__dirname, '../public')));

然后在你的HTML中。

<link rel="stylesheet" href="/static/css/style.css" type="text/css">

但是你有静态文件夹结构。