EJS 包含不是函数错误

Cha*_*ish 4 javascript ejs node.js express

在我的许多 EJS 页面上,我有以下代码:

<%- include('elements/fbviewpagepixel.ejs') %>
Run Code Online (Sandbox Code Playgroud)

除了这一页外,它工作得很好。在那个页面上,它给了我一个错误说include is not a function。看起来我可以通过将上面的代码更改为以下代码来修复它:

<%- include elements/fbviewpagepixel.ejs %>
Run Code Online (Sandbox Code Playgroud)

为什么第一个版本适用于我的所有页面,除了这个页面?为什么在这一页上给我一个错误?两者之间甚至有什么区别?

Ben*_*lfe 7

EJS的更高版本中,“client”参数键被保留,因此会导致此错误。重命名密钥,它将解决您的问题。

  • 客户端参数键?问题在哪里引用? (2认同)

小智 1

我也有同样的问题;我通过删除 node_modules 文件夹并运行新的 > npm install 来解决这个问题。

希望我能确切地告诉你为什么这会解决问题,但我从出现此错误到后来一切正常。