Делать Ajax-вызов только на определенной странице - PullRequest
0 голосов
/ 09 апреля 2019

Я делаю многостраничное приложение с несколькими страницами, выполняющими запросы ajax. Я хочу убедиться, что каждый запрос запускается на определенной странице (а не на каждой странице).

Например, следующие вызовы будут вызывать каждую страницу в моем экспресс-приложении:

$(document).ready(function() {
  $.getJSON('/api/skills/user')
    .then(selected => {
      console.log("js.2. pre-populate GET /api/skills/user/")
    })
    .catch(err => {
      console.log("$.getJSON('/api/skills/user/') failed")
    })
}

Я пытаюсь сделать этот вызов только на определенной странице, сначала проверив, соответствует ли строка URL-адресу:

$(document).ready(function() {
  if(window.location.toString().includes("profile")) {

    $.getJSON('/api/skills/user')
      .then(selected => {
        console.log("js.2. pre-populate GET /api/skills/user/")
      })
      .catch(err => {
        console.log("$.getJSON('/api/skills/user/') failed")
      })
  }
}

Однако, если я хочу сделать этот вызов на страницахс URL-адресами, такими как /profile/..., но не profile/.../matches/..., этот подход не работает (так как он находит profile в /profile/... и profile/.../matches/...).

Как мне поступить так?Я мог бы сравнить URL с регулярным выражением, но это не очень хороший способ сделать это.

Существует ли стандартный способ выполнения вызова ajax для конкретной страницы?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...