繁体   English   中英

var fs = require('fs')未运行后的代码

[英]code after var fs = require('fs') not running

为什么我的简单jquery无法在var fs = require('fs')代码之后运行。

这可以正常运行

    //here is my simple jquery
    $("#table th").css("color", "yellow");
//here starts the fs code
        var fs = require('fs');
        var output = fs.readFileSync('component names.txt', 'utf8').replace(/(\r)/gm, "").split('\n').map((line) => {
            let [Eng, Spa, ger] = line.split('\t');
            return {
                Eng,
                Spa,
                ger
            };
        });
        var Eng = output.map(item => item.Eng);
        var Spa = output.map(item => item.Spa);

但是,如果我将$(“#table th”)。css(“ color”,“ yellow”)放在底部,因为要填充表格,就在它想要的位置,它在这里不起作用:

var fs = require('fs');
var output = fs.readFileSync('component names.txt', 'utf8').replace(/(\r)/gm, "").split('\n').map((line) => {
    let [Eng, Spa, ger] = line.split('\t');
    return {
        Eng,
        Spa,
        ger
    };
});
var Eng = output.map(item => item.Eng);
var Spa = output.map(item => item.Spa);

//jquery
$("#table th").css("color", "yellow");

为什么?

我怀疑它与readFileSync函数有关。 尝试用try catch包裹它,看看它是否捕获了任何东西。 您说第一个代码有效,但是我认为您指的是jquery代码。 我相信fs代码无法正常运行。

try {

  var output = fs.readFileSync('component names.txt', 'utf8').replace(/(\r)/gm, "").split('\n').map((line) => {
  let [Eng, Spa, ger] = line.split('\t');
    return {
      Eng,
      Spa,
      ger
    };
  });


  var Eng = output.map(item => item.Eng);
  var Spa = output.map(item => item.Spa);

} catch(e) {
  console.error(e) //see what's going on here
}

如果执行此操作,则jQuery代码将起作用,因为会捕获并忽略发生的任何错误,因此调试代码以免将来遇到任何问题非常重要。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM