如何只在某些路线/页面上包含样式表?

时间:2017-07-23 00:32:28

标签: node.js templates express partial-views ejs

我有一个简单的node.js应用程序,它有两个样式表,一个用于主页面,另一个用于辅助页面。

我还有一个标题部分,我想要包含在两个页面上,但是,其中一个样式表应该只适用于辅助页面。如何只用一个标题页来实现这个目标?

这是我的标题部分:

<!DOCTYPE html>
<html>
    <head>
        <title>TestApp</title>

        <!--STYLESHEETS-->
        <link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
        <link rel="stylesheet" type="text/css" href="/stylesheets/main.css">

        <!--FONTS-->
        <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Raleway">
    </head>
    <body>

在我的辅助页面路线中,我尝试了以下内容:

 res.render("secondary", {data: alldata, path: req.path});

现在我想检查标题partial中的path变量,并根据值添加第二个样式表。我尝试了以下方法:

<!DOCTYPE html>
<html>
    <head>
        <title>TestApp</title>

        <!--STYLESHEETS-->
        <link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
        <link rel="stylesheet" type="text/css" href="/stylesheets/main.css">

    <%  
       if path === "/secondary"
       link(rel='stylesheet', href="/stylesheets/secondary.css") 
    %>

        <!--FONTS-->
        <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Raleway">
    </head>
    <body>

这给了我一个'意外的标识符'错误。我不确定我在这里做错了什么。有什么想法吗?

谢谢!

编辑:

管理好了...我需要将路径传递给我的主要和次要页面路径,否则会出错。

0 个答案:

没有答案