代码之家  ›  专栏  ›  技术社区  ›  jwkoo

ejs查看nodejs中的引擎路径设置问题

  •  0
  • jwkoo  · 技术社区  · 7 年前

    我不知道如何在stackoverflow中绘制我的项目结构,因此我将尝试尽可能清楚地解释我的问题。

    我有服务器。我的根目录中的js文件,使用express。静态中间件。

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

    还有我的风格。css文件包含在public/css/style中。css

    此外,我使用的是ejs视图引擎,我有两个视图文件。 (ejs视图引擎正在查找视图文件夹)

    第一个是视图/主视图/主视图。ejs,第二个是视图/子视图/简介/位置。ejs公司

    我正在使用<%包括%>每个文件中的代码,

    // views/main/home.ejs
    <% include ../header.ejs %>
    
    // views/sub/intro/location.ejs
    <% include ../../header.ejs %>
    

    问题是,在标题中。ejs文件,我是否必须在两个不同的href路径中链接相同的css文件?喜欢

    // views/header.ejs
    
    // for views/main/home.ejs
    <link rel="stylesheet" href="css/style.css" type="text/css">
    
    // for views/sub/intro/location.ejs
    <link rel="stylesheet" href="../css/style.css" type="text/css">
    

    这是我唯一能做的吗?

    if标题。ejs有许多静态图像文件, 我必须写作吗

    img src

    每个图像两次?

    如果有更有效的方法来解决这个问题, 如果能提醒我这一点,我将不胜感激。非常感谢。

    1 回复  |  直到 7 年前
        1
  •  1
  •   Adetona Abiodun Abdulquadri    7 年前

    因为您引用的是同一个文件,所以不需要写两次。

    因为您已经配置了 express static :

    //for css file
    <link rel="stylesheet" href="/css/style.css" type="text/css">
    //for image.  
    <img src="/imagefilepath">
    

    关键是应该有一个,而不是两个。

    希望这有帮助。