我正在尝试使用AJAX提交一个简单的表单。 我使用grunt作为任务运行器来编译我的JS文件等等。
这是我迄今为止所做的。
$("form").submit(function(event) { event.preventDefault(); var formData = { $("#username").val(), $("#password").val() }; $.ajax({ url: 'xxx', type: 'POST', dataType: 'json', data: formData, encode: true }) .done(function(data) { console.log(data); }) });我怀疑是在任务即将运行时发生JShint错误
$(“#username”).val(),^'简明方法'在ES6(使用esnext选项)或Mozilla JS扩展(使用moz)中可用。
这是我的gruntfile(jshint任务)
jshint: { ignore_warning: { options: { '-W099': true, /*'-W041': true,*/ '-W044': true, '-W033': true, '-W043': true, '-W049': true, '-W004': true, '-W065': true, '-W083': true, // Corrigir futuramente }, src: ['public/_assets/src/js/modules/*.js'], } }这究竟意味着什么? 我该如何解决这个错误?
谢谢!
I'm trying to submit a simple form using AJAX. I'm using grunt as task runner to compile my JS files and so.
Here is what I did until now.
$("form").submit(function(event) { event.preventDefault(); var formData = { $("#username").val(), $("#password").val() }; $.ajax({ url: 'xxx', type: 'POST', dataType: 'json', data: formData, encode: true }) .done(function(data) { console.log(data); }) });My doubt is about a JShint error when the task is about to run
$("#username").val(), ^ 'concise methods' is available in ES6 (use esnext option) or Mozilla JS extensions (use moz).
Here is my gruntfile (jshint task)
jshint: { ignore_warning: { options: { '-W099': true, /*'-W041': true,*/ '-W044': true, '-W033': true, '-W043': true, '-W049': true, '-W004': true, '-W065': true, '-W083': true, // Corrigir futuramente }, src: ['public/_assets/src/js/modules/*.js'], } }What exactly does it means ? And how can I solve this error ?
Thanks!
最满意答案
formData正文缺少名称:
var formData = { $("#username").val(), $("#password").val() };任何类型的简短对象文字,无论是计算名称还是内联方法,都是ES6的一项功能。
您几乎可以肯定只需要将名称添加到您已获得的值中:
var formData = { username: $("#username").val(), password: $("#password").val() };使用ES6,您可以在对象文本中声明方法,如下所示:
var formDataFetch = { username() { return $("#username").val() } };(请参阅此博客文章了解更多详情)
这似乎是解析器认为你的对象包含的内容。
The formData body is missing the names:
var formData = { $("#username").val(), $("#password").val() };Any kind of short-hand object literal, be it calculated names or inline methods, is an ES6 feature.
You almost certainly just need to add the names to the values you're already getting:
var formData = { username: $("#username").val(), password: $("#password").val() };With ES6, you are able to declare methods in an object literal, like so:
var formDataFetch = { username() { return $("#username").val() } };(see this blog post for more details)
which seems to be what the parser thinks your object contains.
JSHint - ^'简明方法'在ES6中可用(JSHint - ^ 'concise methods' is available in ES6)我正在尝试使用AJAX提交一个简单的表单。 我使用grunt作为任务运行器来编译我的JS文件等等。
这是我迄今为止所做的。
$("form").submit(function(event) { event.preventDefault(); var formData = { $("#username").val(), $("#password").val() }; $.ajax({ url: 'xxx', type: 'POST', dataType: 'json', data: formData, encode: true }) .done(function(data) { console.log(data); }) });我怀疑是在任务即将运行时发生JShint错误
$(“#username”).val(),^'简明方法'在ES6(使用esnext选项)或Mozilla JS扩展(使用moz)中可用。
这是我的gruntfile(jshint任务)
jshint: { ignore_warning: { options: { '-W099': true, /*'-W041': true,*/ '-W044': true, '-W033': true, '-W043': true, '-W049': true, '-W004': true, '-W065': true, '-W083': true, // Corrigir futuramente }, src: ['public/_assets/src/js/modules/*.js'], } }这究竟意味着什么? 我该如何解决这个错误?
谢谢!
I'm trying to submit a simple form using AJAX. I'm using grunt as task runner to compile my JS files and so.
Here is what I did until now.
$("form").submit(function(event) { event.preventDefault(); var formData = { $("#username").val(), $("#password").val() }; $.ajax({ url: 'xxx', type: 'POST', dataType: 'json', data: formData, encode: true }) .done(function(data) { console.log(data); }) });My doubt is about a JShint error when the task is about to run
$("#username").val(), ^ 'concise methods' is available in ES6 (use esnext option) or Mozilla JS extensions (use moz).
Here is my gruntfile (jshint task)
jshint: { ignore_warning: { options: { '-W099': true, /*'-W041': true,*/ '-W044': true, '-W033': true, '-W043': true, '-W049': true, '-W004': true, '-W065': true, '-W083': true, // Corrigir futuramente }, src: ['public/_assets/src/js/modules/*.js'], } }What exactly does it means ? And how can I solve this error ?
Thanks!
最满意答案
formData正文缺少名称:
var formData = { $("#username").val(), $("#password").val() };任何类型的简短对象文字,无论是计算名称还是内联方法,都是ES6的一项功能。
您几乎可以肯定只需要将名称添加到您已获得的值中:
var formData = { username: $("#username").val(), password: $("#password").val() };使用ES6,您可以在对象文本中声明方法,如下所示:
var formDataFetch = { username() { return $("#username").val() } };(请参阅此博客文章了解更多详情)
这似乎是解析器认为你的对象包含的内容。
The formData body is missing the names:
var formData = { $("#username").val(), $("#password").val() };Any kind of short-hand object literal, be it calculated names or inline methods, is an ES6 feature.
You almost certainly just need to add the names to the values you're already getting:
var formData = { username: $("#username").val(), password: $("#password").val() };With ES6, you are able to declare methods in an object literal, like so:
var formDataFetch = { username() { return $("#username").val() } };(see this blog post for more details)
which seems to be what the parser thinks your object contains.
发布评论