我正在为Ajax和Laravel项目编写单元测试代码. 我正在尝试测试一个功能.
<script>
$(document).ready(function () {
$('#postAdd').click(function(e){
e.preventDefault();
var form = $('#addPost');
formData.append('file', $('input[type=file]')[0].files[0]);
$.ajax({
type: "POST",
url: "{{ route('posts.store') }}",
data: formData,
success: function (response) {
console.log(response)
},
error: function (error) {
console.log(error)
}
})
})
})
</script>
在浏览器中, 这个功能可以正常工作, 但是当测试时, 我在控制台得到以下错误信息
ReferenceError: formData is not defined
formData
没有定义。
在你的脚本中没有任何地方定义了变量 formData
.
你创建了一个名为 form
但你这样做不是为了 formData
.
也许你是想声明一个叫 formData
而不是形式,或其他方式。