Meteor перезапускает клиент после Meteor.call()

Я использую: meteor-base@1.4.0. Я хочу перенаправить пользователя на другую страницу, но после вставки клиент обновляется. Это означает, что я заполняю форму, сохраняю данные, выполняю навигацию, а затем с обновлением клиента я возвращаюсь на страницу формы.

// Methods.js
import { Meteor } from "meteor/meteor";
import { Players } from "../imports/api/players";

Meteor.methods({
    insertPlayer(player) {
        Players.insert(player);
    }
})

Я вызываю метод следующим образом:

// New-player.jsx
Meteor.call("insertPlayer", player, (error) => {
    if(error) {
        alert("Oups something went wrong: " + error.reason);
    } else {
        this.props.history.push("/");
    }
})

И я храню значения как:

// Players.js
Players.allow({
    insert() { return false; },
    update() { return false; },
    remove() { return false; }
});

Players.deny({
    insert() { return true; },
    update() { return true; },
    remove() { return true; }
})

Есть идеи, что может вызвать такое поведение? Я скучаю по любому конфигу?

Проект можно найти здесь: https://github.com/roedit/soccer-app

1 ответ

Я полагаю, вы используете событие отправки формы? Убедитесь, что вы вызвали Meteor Method insertPlayer ты используешь event.preventDefault(), Если вы не используете event.preventDefault(), страница обновится.

Другие вопросы по тегам