简体   繁体   English

如何将 function 的结果从外部 javascript 脚本返回到 pug 文件?

[英]How return the result of a function from an external javascript script to a pug file?

I'm currently working on a little project which use pug (I discovered it just yesterday).我目前正在做一个使用哈巴狗的小项目(我昨天才发现它)。

Here is my configuration:这是我的配置:

file1.pug文件 1.pug

- let resultArray = oldArray;

input(
  type='button'
  name='resultButton'
  placeholder='Click me...'
  onclick="addNumber(resultArray)"
 )

script
  include scripts/search_script.js

externalScript.js externalScript.js

function getTotal(resultArray) {

  let result = 0;
  let newArray = [];

  for(let i = 0; i < resultArray.length; i++){
    result += resultArray[i]; 
  }  

  newArray.push(result);

  return newArray;
}

It's just a little (weird) example of what I did.这只是我所做的一个小(奇怪的)例子。

The thing is, I was wondering if the value of resultArray which is in my file1.pug can be replaced by the value returned from the method getTotal() in my externalScript.js ?问题是,我想知道file1.pug中的resultArray的值是否可以替换为我的externalScript.js中的getTotal()方法返回的值?

Pug won't have access to javascript included inside a script tag, which will only run in browser. Pug 将无法访问包含在script标签中的 javascript,该标签只能在浏览器中运行。 If you want to use the getTotal() function in Pug, you could include it in an unbuffered code block in your Pug file like this:如果您想在 Pug 中使用getTotal() function,您可以将它包含在您的 Pug 文件中的无缓冲代码块中,如下所示:

-
  function getTotal(resultArray) {

    let result = 0;
    let newArray = [];

    for (let i = 0; i < resultArray.length; i++) {
      result += resultArray[i]; 
    }

    newArray.push(result);

    return newArray;
  }

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

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