发布时VueJS <v-select>不绑定

时间:2018-12-05 03:18:22

标签: asp.net-mvc select vue.js vuejs2

我正在前端使用VueJS开发asp.net mvc应用程序。我有一堆表格,虽然文本字段在提交表格时可以正常工作(这意味着我可以看到它与视图模型绑定,并且可以看到在表格上键入的值),但<v-select>却并非如此

这是我所拥有的:

<v-select clearable :items="options" 
                item-text="name"
                label="Months" v-model="Month"></v-select>

我希望它会与myViewModel.Month绑定,但不会。

我可以将v-select与一个隐藏字段绑定,并且隐藏字段的值将与我的视图模型绑定,但这是一个额外的步骤(和元素)。

我是VueJS的新手,所以如果有人可以给我一些指导。谢谢。

更新:

我的代码如下:https://codepen.io/anon/pen/EOzrgV

问题不是关于Vue中的模型绑定,而是关于我的C#ViewModel的模型绑定。例如,我有以下控制器:

    public ActionResult Member()
    {
        if (!LoggedIn)
            return RedirectToAction("Index");
        MemberViewModel model = new MemberViewModel();
        return View(model);
    }
    [HttpPost]
    public ActionResult Member(MemberViewModel model)
    {
        if(ModelState.IsValid)
        {
            // Here I can see value of model.name
            // But model.month is always empty
            //model.Save();
        }
        return View(model);
    }

1 个答案:

答案 0 :(得分:1)

如果您的数据对象看起来像

data: {
  myViewModel: {
    Month: '',
  },  
}

您需要像myViewModel.Month

那样绑定它
<v-select clearable
  :items="options" 
  item-text="name"
  label="Months"
  v-model="myViewModel.Month"
></v-select>

我在这里举例说明:https://jsfiddle.net/kIINAMITE/eywraw8t/491056/