I am getting a TypeError: Object(...) is not a function compiler issue and I am not sure why, below are the corresponding files - I am specifically getting an issue where
const mySubmission = GetStudentSubmissionWithUrl();
is run. My function GetStudentSubmissionWithUrl() returns a JavaScript object and I want to assign this object to another JavaScript object.
function Details () {
const mySubmission = GetStudentSubmissionWithUrl();
/* TODO: do the filtering of a submission in the backend instead of right here - will cause a big performance hit */
return (
<React.Fragment>
{mySubmission?.images && <ImageCarousel imageList={mySubmission.images}/>}
<div className="card-body">
<h1 className="title-event">{}</h1>
{mySubmission?.subjectName && <h2 className="title-location"> {mySubmission.subjectName}</h2>}
<br></br>
<div className="row=title">
{mySubmission?.location && <h3 className="submitter-location"> {mySubmission.location}</h3>}
{mySubmission?.description && <p> {mySubmission.description}</p>}
</div>
<br></br>
</div>
{mySubmission?.sources && <Source sourceList={mySubmission.sources}/>}
</React.Fragment>
);
}
export default Details;
Here is where my corresponding GetStudentSubmissionWithUrl() is defined:
import React, { useState, useEffect } from 'react';
import { getAllVerified } from '../util';
//return a StudnetSubmission given the current ulr link that we are in
function GetStudentSubmissionWithUrl() {
const [submissions, setSubmissions] = useState(null);
useEffect(() => {
const fetchData = async () => {
const data = await getAllVerified(); //just get the one
setSubmissions(data);
};
fetchData();
}, []);
let str = JSON.stringify(window.location.pathname);
let submissionId = str.split("/").pop();
submissionId = submissionId.replace('"', '');
let mySubmission;
if (submissions != null) {
var arrayLength = submissions.length;
for (var i = 0; i < arrayLength; i++) {
let string_id = submissions[i].id;
string_id = string_id.replace('"', '');
if (submissionId === string_id) {
mySubmission = JSON.parse(JSON.stringify(submissions[i]));
}
}
}
return mySubmission;
}
export default GetStudentSubmissionWithUrl;
Any help would be much appreciated - thanks in advance!