Javascript 在Ember 2.10中清除表单字段
我正在学习一个关于构建ember 2.10应用程序的教程。我已将验证逻辑移出联系人控制器,并将其放入联系人模型中。我已将我的操作(保存联系人)放置在联系人路由文件中。 我可以将我的新联系人保存到Firebase数据库而不会出错。我被困在如何清理表格上 我的联系人路由文件看起来像Javascript 在Ember 2.10中清除表单字段,javascript,ember.js,Javascript,Ember.js,我正在学习一个关于构建ember 2.10应用程序的教程。我已将验证逻辑移出联系人控制器,并将其放入联系人模型中。我已将我的操作(保存联系人)放置在联系人路由文件中。 我可以将我的新联系人保存到Firebase数据库而不会出错。我被困在如何清理表格上 我的联系人路由文件看起来像 import Ember from 'ember'; export default Ember.Route.extend({ model() { return this.store.createRecor
import Ember from 'ember';
export default Ember.Route.extend({
model() {
return this.store.createRecord('contact');
},
actions: {
saveContact(newContact) {
newContact.save().then((response) => {
const email = this.get('model.email');
const message = this.get('model.message')
this.set('email', '');
this.set('message', '');
})
}
}
});
我试图检索表单中的当前值,并将message和email设置为空字符串
我已经运行了一个测试并将控制台日志电子邮件发送到控制台,它返回未定义的邮件
在输入字段中,传入的值是model.email和model.message
是否还有其他人遇到此问题?若要刷新此路由上的模型,请尝试呼叫
this.refresh()
这将触发
beforeModel
、model
和afterModel
挂钩,以便您获得新的联系人模型 要刷新此路由上的模型,请尝试调用
this.refresh()
这将触发
beforeModel
、model
和afterModel
挂钩,以便您获得新的联系人模型 尝试this.set('model.email','');this.set('model.message','')
或者你可以直接调用this.refresh()
它将调用model hook,你将获得新的联系人model。谢谢。这个.refresh()有效。this.set('model.email',')和this.set('model.message','')是我尝试的第一件事。我可以提交表单值,但是页面没有重置就冻结了。在模型函数中创建新记录有点奇怪。在存储区中创建记录(不保存)不是异步过程。所以你们可以在任何地方做,而不仅仅是在模型中。model()
hook的目的是从api/database/file加载一些东西。我认为,在您的情况下,您应该有联系人表单组件,并且应该实现整个联系人表单逻辑。如果你已经有了这个组件,你可以粘贴它,我会看看能做些什么来改进代码。试试this.set('model.email','');this.set('model.message','')
或者你可以直接调用this.refresh()
它将调用model hook,你将获得新的联系人model。谢谢。这个.refresh()有效。this.set('model.email',')和this.set('model.message','')是我尝试的第一件事。我可以提交表单值,但是页面没有重置就冻结了。在模型函数中创建新记录有点奇怪。在存储区中创建记录(不保存)不是异步过程。所以你们可以在任何地方做,而不仅仅是在模型中。model()
hook的目的是从api/database/file加载一些东西。我认为,在您的情况下,您应该有联系人表单组件,并且应该实现整个联系人表单逻辑。如果你已经有了这个组件,你可以粘贴它,我会看看能做些什么来改进代码。