Javascript 如何在Jade模板中包含客户端脚本?

Javascript 如何在Jade模板中包含客户端脚本?,javascript,requirejs,pug,momentjs,Javascript,Requirejs,Pug,Momentjs,我正在使用jade生成一个静态网站,该网站名为grunt,我想从我的jade模板调用moment.js 我不知道该如何加载“时刻库” 报告说: 但我不确定异步加载如何与jade一起工作 所以我写了这段代码,它不编译: doctype html html(lang="en") head script(src='scripts/require.js') script. require.config({ paths: {

我正在使用jade生成一个静态网站,该网站名为grunt,我想从我的jade模板调用moment.js

我不知道该如何加载“时刻库”

报告说:

但我不确定异步加载如何与jade一起工作

所以我写了这段代码,它不编译:

doctype html
html(lang="en")
  head
    script(src='scripts/require.js')
    script. 
      require.config({
            paths: {
                "moment": "scripts/moment.js",
            }
      });
  body
    p #{moment(Date.now()).format('MM/DD/YYYY')}
出现以下错误:

>> TypeError: src/test.jade:7
>>     5|     script. 
>>     6|         require.config({
>>   > 7|             paths: {
>>     8|                 "moment": "scripts/moment.js",
>>     9|             }
>>     10|         });
>> 
>> undefined is not a function
我应该如何加载我的力矩对象,以便它可以用于Jade(模板和混合)?

注意,如果我用编译的p{Date.now()替换p{moment(Date.now()).format('MM/DD/YYYY')}行


诀窍是当grunt调用jade编译器生成最终的html文件时,使javascript可用

注意javascript的输出将静态复制到html文件中。javascript库是仅编译时(devDependency)依赖项

简单测试文件

doctype html
html(lang="en")
  head
  body
    p #{moment(Date.now()).format('MM/DD/YYYY')}
    p Hello guys !!
咕噜文件

module.exports = function(grunt){
    ... 
    grunt.initConfig({
        pkg: grunt.file.readJSON('package.json'),
        ...
        moment = require ('moment') ;
        grunt.registerTask( ...
        ... 
包文件

{
  "name": "site",
   ...
  "devDependencies": {
    ...
    "moment": "*"
  },
  "dependencies": {
    ...
  }
}
感谢@ForbesLindesay的帮助


我不确定,但丹特小姐是主要嫌疑犯。Jade是模板引擎。所以你们必须按照Jade的方式来理解indent和其他人。我尝试了不同的缩进。但是没有用(我更新了我的问题)。此外,Jade不需要缩进javascript,对吗?我有个问题。您的jade文件包括requirejs,它称为momoentjs。顺便说一句,您的最后一个代码想要在模板->html瞬间将函数结果写入html吗?是的。我想在我问@ForbesLindesay的页面上写下即时通话的结果。他跟我说了格伦特的事@ForbesIndesay:需要在grunt配置中完成,以便将其作为本地文件传递给jade:
{moment:require('moment')}
{
  "name": "site",
   ...
  "devDependencies": {
    ...
    "moment": "*"
  },
  "dependencies": {
    ...
  }
}