我正在收集一些我希望允许用户下载的数据,并且试图找出处理文件名的最佳方法。默认文件名应该是动态的并且基于当前日期,因此我认为需要为其创建一个computed property
。我还希望用户可以选择更改文件名。但是,当我在输入表单上将其设置为v-model
时,表单内的所有更改都不会在属性上注册。我无法弄清楚如何捕获该新值,因此以后可以使用它生成文件。我尝试了v-model
的各种组合并使用了多个computed properties
,但没有一个给我预期的结果。
Here是一个jsfiddle,具有查看我的问题所需的最少代码。
答案 0 :(得分:2)
通常,您希望v-model
引用一个data
属性,而不是计算属性。这种方法看起来像:
<input v-model="filename">
然后您可以使用默认值初始化data属性
data: {
filename: this.defaultFilename()
}
然后将defaultFilename()
定义为方法
methods: {
defaultFilename() {
return "whatever";
}
}