Browserify with Riot Custom Tags给出类型错误

时间:2016-01-02 09:43:44

标签: javascript browserify riot.js

我试图在browserify中使用防暴自定义标签。

TypeError: Cannot read property 'render' of null while parsing file: /Users/michaelmostachetti/Google_Drive/dev/web/mike_mostachetti_site/app/views/blog.tag
at _html.jade (/Users/michaelmostachetti/Google_Drive/dev/web/mike_mostachetti_site/node_modules/riot/node_modules/riot-compiler/dist/compiler.js:58:26)
at compileTemplate (/Users/michaelmostachetti/Google_Drive/dev/web/mike_mostachetti_site/node_modules/riot/node_modules/riot-compiler/dist/compiler.js:692:10)
at Object.compile (/Users/michaelmostachetti/Google_Drive/dev/web/mike_mostachetti_site/node_modules/riot/node_modules/riot-compiler/dist/compiler.js:717:11)
at Stream.<anonymous> (/Users/michaelmostachetti/Google_Drive/dev/web/mike_mostachetti_site/node_modules/riotify/index.js:16:58)
at _end (/Users/michaelmostachetti/Google_Drive/dev/web/mike_mostachetti_site/node_modules/riotify/node_modules/through/index.js:65:9)
at Stream.stream.end (/Users/michaelmostachetti/Google_Drive/dev/web/mike_mostachetti_site/node_modules/riotify/node_modules/through/index.js:74:5)
at DestroyableTransform.onend (/Users/michaelmostachetti/npm-global/lib/node_modules/browserify/node_modules/readable-stream/lib/_stream_readable.js:545:10)
at DestroyableTransform.g (events.js:260:16)
at emitNone (events.js:72:20)
at DestroyableTransform.emit (events.js:166:7)

这是我的package.json

"browserify": {
    "transform": [
      [
         "riotify",
         {
              "template": "jade"
         }
      ]
    ]
}

这是我的index.js。

var riot        = require('riot'),
    blogView    = require('./views/blog.tag');

riot.mount(blogView);

我只是对错误和出了什么问题感到困惑。我可以将jade编译成html而不会出现任何问题。这是文档中的示例。 https://github.com/jhthorsen/riotify#usage

1 个答案:

答案 0 :(得分:2)

可能是因为未安装依赖项jade。我刚检查了该错误的堆栈跟踪,它指向了这一行:

return _req('jade').render(html, extend({

请尝试添加jade,然后再次运行。