如何为浏览器获取 Twig.js

How to get Twig.js for the browser

我在服务器端使用 Twig 作为我的模板系统,也想在客户端使用它(以使用相同的模板)。

我也在使用 Bower 并尝试使用此命令来获取 Twig.js:

bower install twig.js

但这并没有安装这里看到的所有文件夹 https://github.com/twigjs/twig.js。然后我尝试安装其他最近的分支和提交,但至少仍然缺少 2 个文件夹(bin & src)。

在那之后,我尝试使用 Git 克隆项目并且成功了,因为它确实获得了所有列出的文件和文件夹。

但是当我在我的 HTML 文件中包含 twig.js 时,会在 Chrome 控制台日志中抛出此错误:

twig.js:13 Uncaught ReferenceError: require is not defined

我最好的猜测是函数“require”属于 Node.js(对吗?)并且必须有某种编译才能为浏览器获取 Twig.js(对吗? ??).

所以,我不知道下一步是什么...我怎样才能得到浏览器的 Twig.js? (与此同时,我将从 CDN 获取 Twig.js)。

请帮帮我。

您必须安装 RequireJS 才能使用 require("twig");。先安装然后 运行.

我不知道您使用的 Twig.js 是哪个版本,因为这个问题几乎是 2 年前发布的,但可能是 0.9.x 或更高版本。从那个版本开始,维护者没有在项目的根目录中提交任何为 Web 使用而编译的 JS 文件。

所以是的,src/ 文件夹中的 JS 文件是 NodeJS 文件,您需要 'to do something' 才能在浏览器中使用它们。该库正在使用 Webpack 构建浏览器兼容版本。

您应该 运行 npm install 在 GitHub 克隆的根目录中设置项目,然后 运行 npm run build 以构建一个网页版。之后在根目录中检查 twig.js

使用 CDN 版本也是一个不错的选择。但是因为自版本 0.9.0 以来构建被排除在外,所以 Twig.js on cdnjs 没有比 0.8.9 更新的版本,而库目前是版本 1.12.0

或运行npm install twig --save,编译后的文件在:

  • node_modules/twig/twig.js
  • node_modules/twig/twig.min.js