找到一个javascript数组从流星mongodb

find in a javascript array from meteor mongodb

本文关键字:数组 javascript 流星 mongodb 一个      更新时间:2023-09-26

可以了

Template.kanjifinder.kanjicharacters = function () {
    console.log("kanjlist");
    return kanji.find({cardid: {$in:[1,2]}}, {sort: {cardid: 1}});  
};

但是否有一种方法来取代这个硬编码的数组[1,2]与javascript数组?

var str = "123456"
var cardids = str.split("");
if (Meteor.isClient) {
    Template.kanjifinder.kanjicharacters = function () {
        console.log("kanjlist");
        return kanji.find({cardid: {$in: **cardids** }}, {sort: {cardid: 1}});  
    } 
};

你只需要在你的字符串中使用分隔符,你也可以在你的代码中这样做,但问题是2位数:

var str = "1,2,3,4,5,6" //<<--- use a seperator here
var cardids = str.split(","); //<<--
//remove this line if you intend to use strings in your db instead of integers
cardids = _.map(function(card) { return parseInt(card);});
if (Meteor.isClient) {
   Template.kanjifinder.kanjicharacters = function () {
     console.log("kanjlist");
     return kanji.find({cardid: {$in:cardids}}, {sort: {cardid: 1}});  
   };
}

我使用下划线将字符串转换为整数,如果你还没有它添加它到你的流星包与meteor add underscore