在Jade中使用JS脚本的变量

Use variable of a JS script in Jade

本文关键字:脚本 变量 JS Jade      更新时间:2023-09-26

我想使用一个变量,我在一个JS脚本定义在我的翡翠文件。这可能吗?

为了足够清楚,下面是我要做的:

  script.
   var J1 = 0;
   var socket = io.connect('http://localhost:3000');
   socket.on('positionJ1', function(positionJ1) {
     J1 = positionJ1;
   })
p Le joueur 1 est en case #{J1}

编辑:为了尝试使用DOM的方法,我已经这样做了,但是我没有收到任何警告。它不是innerHTML方法不起作用,因为当我做document.body。innerHTML = "Something";

script.
    var J = document.getElementById("posJ1").innerHTML;
    alert(J);
p#posJ1 Plop

更正:当我的p#posJ1在脚本

之上时,它会起作用

解决方案:

p#posJ1
   script.
    var socket = io.connect('http://localhost:3000');
    socket.on('positionJ1', function(positionJ1) {
      var J1 = document.getElementById("posJ1");
      J1.innerHTML = "Le joueur 1 est en case " + positionJ1;
      document.body.appendChild(J1);
    })

这简直是不可能的。Jade在提供给客户端之前被渲染成静态HTML。您放入的任何变量只在呈现时被解析。

你必须使用javascript来做任何像那样的运行时DOM操作。

<>之前脚本。var J1 = 0;Var socket = io.connect('http://localhost:3000');套接字。on('positionJ1', function(positionJ1) {J1 = positionJ1;. getelementbyid(的位置)。innerHTML = j - 1;})p《你是谁?跨度#位置