如何在MEAN Stack中为表单设置默认值?

时间:2018-10-01 09:22:27

标签: javascript node.js angular mongodb mean-stack

MEAN Stack和Angular的新增功能6.使用MEAN Stack开发Web应用程序。单击form后需要将默认值加载到button

为此,要实现button函数。需要访问mongodb集合并从数据库获取默认值。

如何访问默认值?在正常的CRUD函数中遵循List details by id方法是否正确?有什么更好的办法吗?在angular-5-crud-web-application-example上遵循本教程。

---更新---

步骤1:首先,我将默认数据发布到了数据库中。 我为该数据集设置了username =“ default”。 步骤2:然后,我创建了一个REST API以使用userName

获取该数据集。
//Get single value by userName
router.get('/:userName', function(req, res, next) {
    extrudedHeightValue.findOne({'userName': req.params.userName}, function (err, post) {
      if (err) return next(err);
      res.json(post);
    });
  });

第3步:然后设置按钮点击的方法 html中的按钮

 <div class="form group">
       <input type="text" nbInput name="extrudedHeight" [(ngModel)]="extrudedHeight" />
  </div>

           <div class="">
              <button type='button' (click)="setDefaultValues(extrudedHeight)" class="btn btn-sm btn-rectangle btn-default text-case">Default Values</button>
           </div>

步骤4: 实施按钮单击以获取默认值,如下所示。

在.ts文件中,

ngOnInit()
{
this.getDefaultValue(this.route.snapshot.params['userName']);
}

getDefaultValue(userName){
    this.http.get('/extrudedHeight/'+userName).subscribe(**data** => {this.extrudedHeightValue = data;});
  }

setDefaultValues(){
    this.getDefaultValue("default");
    //This method has not been completely implemented according to the requirement.
  }

但是,当我调试时,“ getDefaultValue(userName)”方法中的“数据”加粗显示错误:输入意外结束。当我搜索此错误时,它表示此错误是由于未用方括号引起的。但是我无法确定它是什么。 其他数据表示“未定义数据”。因此这些值不会显示。

1 个答案:

答案 0 :(得分:0)

您可以像这样直接传递查询参数

this.http.get('/defaultValues' + extrudedHeight)

应该是

this.http.get('/defaultValues?extrudedHeight=' + extrudedHeight)