javascript - 无法使用 numtel :mysql for meteor 的 MysqlSubscription 获取数据

标签 javascript mysql meteor

我正在使用meteor来做全栈javascript工作。我想使用mysql而不是mongodb。我在github上找到numtel:mysql,这是Meteor的Reactive MySQL。 在服务器端

Meteor.publish('test', function(){

    let array = liveDb.select(
        'select * from tasks',
        [ { table: 'tasks' } ]
    );

    console.log('publish test mysql')
    console.log(array);

    return array;
});

在客户端

let mysqlData = new MysqlSubscription('test');

console.log('subscribe mysql data at client');
console.log(mysqlData);
console.log(mysqlData.length);
console.log(mysqlData.subscriptionId);
console.log(mysqlData[0]);
console.log(mysqlData[1]);

但是在客户端却无法获取到数据,并且出现了一个奇怪的现象,从日志中找到了mysqlData的数据,但是mysqlData.length为0,mysqlData[0]和mysqlData[1]未定义.

谁能帮助我?

最佳答案

您可能需要调用 mysqlData.reactive() 并首先使用 mysqlData.ready() 检查它是否准备就绪。

如果订阅不起作用(它不会自动更新数据),您应该确保按照installation instruction正确配置您的MySQL服务器。 .

对我来说,当我在数据库名称上使用大写字母时,我无法使其工作,您也应该检查它。

关于javascript - 无法使用 numtel :mysql for meteor 的 MysqlSubscription 获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39588848/

相关文章:

javascript - 带有 PhoneGap 的 iPhone 版谷歌地图

Javascript 查找最小数字及其键

javascript - 将字典存储在数据库中

php - 在wordpress中使用现有html表的数据表(使用数据库连接)

meteor - 如何为单个 meteor 应用程序创建一个私有(private)包?

meteor 和withTracker : why is a component rendered twice?

meteor - 如何使用自动表单用 #each 填充选择元素?

javascript - 如何通过 Angular 单选按钮启用或禁用提交按钮

php - php 中 undefined index

mysql - 连接多个表时遇到问题