Метеор isServer не вызывается сразу - PullRequest
0 голосов
/ 16 марта 2020

В настоящее время у меня проблема с вызовом серверного кода для данных SQL, клиентская сторона всегда вызывается первой, и мне придется ждать около 5 минут или более, чтобы серверная сторона была вызвана , В некоторых случаях серверная сторона не вызывается. Вот примерный код и структура файла. Есть ли способ вызова на стороне сервера без ожидания долго?

статистика. html, страница для вызова сервера

<template name="statistics">
    <div class="content">

        <h2>HTML Forms</h2>

        <div class="row">
            <div class = "col-lg-2">

                <button type="button" class="btn btn-primary getdata" >Get stats</button>
            </div>
        </div>

    </div>
</template>

статистика. js, для вызова getData function

Template.statistics.events({
    'click .getdata'(event, instance){
        alert("get data")
        Meteor.call('getSqlData', function(err, response) {
            if(err){
                console.log("err is "+err)
            }
            console.log(response);
        });
    }
});

sqlData. js, функция getSqlData

Meteor.methods({
getSqlData: function(){
        console.log("at sqldata");
        if(Meteor.isClient){
            console.log("shouldn't be here")
        }
        if(Meteor.isServer){
            console.log("server side")
            //go to a directory and get the file names to be read
            //get the data in the files and insert into mongoDB
        }
});

Моя файловая структура размещена таким образом проект Imports── импорт U ├── ui Pages │ ├── страницы Statistics │ │ ├── статистика. js Statistics │ │ ├── статистика. html Lib── lib │ ├── коллекции │ │ ├── sqlData. js

...