Я пытаюсь проанализировать массив строк в Jade, но всегда приводит к 404 - PullRequest
0 голосов
/ 06 февраля 2020

Я пытался проанализировать массив строк в моем нефритовом файле, но, похоже, он не работает. Я могу консольный журнал массива строк из моей коллекции mongodb, но это не отражается на моем нефрите.

мой код: от js

(global variable) let secretstitle = [];

 dbo.collection("users1").findOne({secretdocument:"rousbepistola"} ,function(err, data){
        if (err) throw err;
        ssn.secretpost = data.secretpost;
        ssn.secrettitle = data.title;
        console.log(data.secretpost);
        console.log(data.title)
        console.log(ssn.secretpost[0]);
        console.log(data.title[0])


        for(let i = 0; i < (data.secretpost).length; i++) {
          secretstitle.push(data.secretpost[i])
        }
        console.log(secretstitle);
        console.log('Yay!')

        db.close();

мой код: от нефрита

    .row
      each n in secretstitle;
        .jumbotron.col-md-12
          h1 #{n}
          | &#x9;&#x9;&#x9;
          h6 January 24, 2019  08:54:05  @username
          | &#x9;&#x9;&#x9;
          p
            | W3Schools is optimized for learning

Я пытаясь создать контент типа блога, который добавляет к себе на неопределенный срок, например, Facebook, 9gag или твиттер. Я получил console.log ("yay") на своем терминале. Я ценю каждую помощь, которую я мог получить. Кстати, моя коллекция выглядит так:

id:ObjectId("random")
secretposts:Array
   0:"post1"
   1:"post 2"
   3:"post 3"
title:Array
   0:"title 1"
   1:"Title 2"
   3:"Title 3"

Ответы [ 2 ]

0 голосов
/ 07 февраля 2020

только что смог решить эту проблему с помощью моего нефритового кода следующим образом

   .row
      - for (var i = 0; i < himitsupost.length; ++i) {
        return
      .jumbotron.col-md-12(style='background-color:lightgreen;')
        h3 #{himitsutitle[i]}
        h5 #{himitsupost[i]}
      - }

И моего js файла следующим образом

 dbo.collection("users1").findOne({secretdocument:"rousbepistola"} ,function(err, data){
    if (err) throw err;
    ssn.secretpost = data.secretpost;
    ssn.secrettitle = data.title;
    console.log(data.secretpost);
    console.log(data.title)
    // console.log(ssn.secretpost[0]);
    // console.log(data.title[0])

    secretspost = [];
    for(let i = 0; i < (data.secretpost).length; i++) {
      secretspost.push(data.secretpost[i])
    }

    secretstitle = [];
    for(let i = 0; i < (data.title).length; i++) {
      secretstitle.push(data.title[i])
    }


    console.log(secretspost);
    console.log('Yay!')

    db.close();

});
});
  res.render('release',{username:ssn.username, himitsutitle:secretstitle, himitsupost:secretspost});
0 голосов
/ 07 февраля 2020

Где-то в обратном вызове из вашего вызова mongodb findOne вам нужно добавить res.render:

dbo.collection("users1").findOne({secretdocument:"rousbepistola"} ,function(err, data){

  res.render('viewname', data);

});

Без этого механизм pug / jade не будет вызывать шаблон с возвращенными данными.

...