羊驼+流星:如何在按钮处理程序中处理表单?

时间:2015-02-12 23:22:50

标签: javascript twitter-bootstrap meteor

我很欣赏这里创建的羊驼流星包ahdinosaur/meteor-alpaca-bootstrap。它似乎与更标准的羊驼装置略有不同。来自羊驼文档的一些例子对我来说并不适用于这个软件包。例如,这个简单示例作为Alpaca docs中架构定义的一部分会导致控制台错误:

// alpaca options
"options": {
    "buttons": {
        "submit": {
            "click": function() {
                if (this.isValid(true)) {
                    var value = this.getValue();
                }
           }
       }
   }
}

这导致

The compiled template: view-formButtonsContainer for view: VIEW_BOOTSTRAP_EDIT_LIST 
    failed to execute: {"message":"renderedForm is not defined"}
The compiled template: view-form for view: VIEW_BOOTSTRAP_EDIT_LIST failed to execute: 
    {"message":"Alpaca caught an error with the default error handler: The compiled template: 
    view-formButtonsContainer for view: VIEW_BOOTSTRAP_EDIT_LIST failed to execute: 
    {\"message\":\"renderedForm is not defined\"}"}

或者这种变化也来自羊驼文档也有错误({\&#34; message \&#34;:\&#34; renderedForm未定义\&#34;}&#34;}):< / p>

if (renderedForm.isValid(true)) {
    value = renderedForm.getValue();
    alert(JSON.stringify(value, null, "  "));
}

我很确定如果我不是JS的新手,这对于修复来说是微不足道的,但对我来说这是一个难题。

我很乐意在README中看到一些使用此流星程序包的工作代码变体的示例,以便我可以对其进行调整。

1 个答案:

答案 0 :(得分:0)

首先,Meteor有一个方便的包管理系统叫做大气,您应该可以通过键入以下内容来安装alpaca-bootstrap包:  meteor add mrt:alpaca-bootstrap。然后,您还可以通过the atmosphere site获得一些不错的统计信息,例如#of installs。

其次,目前还不清楚你在哪里放置你的代码。您的架构定义是否在js文件中?您应该在Template.myTemplate.created回调中执行此操作。请查看:Meteor and Alpaca formshttp://docs.meteor.com/#/full/template_created