моя страница e js не загружается как другая страница e js - PullRequest
0 голосов
/ 17 января 2020

введите описание изображения здесь это мой код edit_admin

Только на этой странице мой html css не получает нагрузку, gretting Ошибка 404 Я много пробовал, но не могу понять, в чем причина такой ошибки. Отказался от применения стиля из '', потому что его тип MIME ('text / html') не поддерживается MIME-типом таблицы стилей, andstrict MIME проверка включена в nodejs Отказался от применения стиля из 'http://localhost: 5000 / admin / css / bootstrap3.3.7.min. css', потому что его тип MIME ('text / html ') не поддерживается MIME-типом таблицы стилей, и включена строгая проверка MIME.

<html lang="en">
  <head>
    <meta charset="UTF-8">
    <title>Admin</title>
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
    <link rel="stylesheet" type="text/css" href="../css/bootstrap3.3.7.min.css">
    <link rel="stylesheet" type="text/css" href="../fonts/font-awesome-4.7.0/css/font- 
       awesome.min.css">
    <link rel="stylesheet" type="text/css" href="../css/dashboard.css">
  </head>
  <body>
    <!-- SIDE BAR START -->
      <%- include('../partials/admin_sidebar.ejs'); %>
    <!-- SIDE BAR END -->
    <section id="contents">
      <nav class="navbar navbar-default">
        <!-- NAV BAR START -->
              <%- include('../partials/admin_navbar.ejs'); %>
        <!-- NAV BAR END -->
      </nav>
     <div class="container-fluid">
        <div class="row" style="background-color: white;">
         <div class="col-md-8">

        <form action="/admin/edit_admin/<%- admin.id %>" method="post">
          <div class="form-group">
            <label for="email">Email address</label>
            <input type="email" value="<%- admin.email %>" name="email" class="form-control" id="email" placeholder="name@example.com">
          </div>
          <!-- <div class="form-group">
            <label for="exampleFormControlSelect1">Example select</label>
            <select class="form-control" id="exampleFormControlSelect1">
              <option>1</option>
              <option>2</option>
              <option>3</option>
              <option>4</option>
              <option>5</option>
            </select>
          </div> -->
          <div class="form-group">
             <label for="password">Password</label>
            <input type="password" value="<%- admin.password %>" name="password" class="form-control" id="password" placeholder="password">
          </div>
          <div class="form-group">
            <input type="submit" class="btn btn-success" name="submit">
          </div>
        </form>
      </div>
    </div>
  </div>
</section>
<script src='http://code.jquery.com/jquery-latest.js' type="text/javascript"></script>
<script src='../js/main.js' type="text/javascript"></script>
<script src='../js/dashboard.js' type="text/javascript"></script>

Ответы [ 2 ]

0 голосов
/ 17 января 2020

Я думаю, вам нужно указать папку с активами в файле nodejs приложения.

app.use(“ASSETS_FOLDER”, express.static(“ASSETS_FOLDER”);
0 голосов
/ 17 января 2020

Ваш css путь к файлу для http://localhost:5000/admin/css/bootstrap3.3.7.min.css неверен.

Поскольку он не может найти файл по указанному пути, он переходит на страницу 404 и возвращает html страницу 404, что вызывает вас чтобы увидеть эту ошибку

Я бы предложил использовать абсолютный путь для ссылки на ваши файлы ресурсов stati c css / js, так как к нему может потребоваться доступ из разных мест, относительный путь может не работать, если к нему обращаются из разных мест

Чтобы убедиться, что это ваша ошибка, просто вставьте этот URL http://localhost:5000/admin/css/bootstrap3.3.7.min.css в ваш браузер и посмотрите, есть ли у вас файл css, если вы видите страницу 404, ошибка именно то, что я объяснил выше.

ОБНОВЛЕНИЕ> Идеальный способ дать ссылку на активы в e js

Вы можете передать base_url таким образом в ваших маршрутах при рендеринге e js

res.render('edit', {
    base_url: "http://" + req.headers.host
})

А затем укажите URL-адрес ссылки, например, это покажет, что он всегда ловит точный файл независимо от того, откуда вы его вызываете

<link rel="stylesheet" type="text/css" href="<%= base_url%>/css/bootstrap3.3.7.min.css">
<link rel="stylesheet" type="text/css" href="<%= base_url%>/fonts/font-awesome-4.7.0/css/font- 
    awesome.min.css">
<link rel="stylesheet" type="text/css" href="<%= base_url%>/css/dashboard.css">
...