Monday, June 3, 2024
 Popular · Latest · Hot · Upcoming
120
rated 0 times [  123] [ 3]  / answers: 1 / hits: 18459  / 5 Years ago, mon, july 22, 2019, 12:00:00

im new to javascript and im trying to make a get request to a youtube API. I have preconfigured a few things related to the request before making it using axios. However, i think my question is more related to the use of the get function.



My predefined configuration for the request is stored under the 'youtube' object. Here is the code uesd to create it



import axios from 'axios';


const KEY = 'AIzaSyDVd1jDhcZdtJb--1_ncBqpL0Gxgfs9ys8';

export default axios.create({

baseURL: 'https://www.googleapis.com/youtube/v3',
params: {
part: 'snippet',
maxResults: 5,
key: KEY

}
});


My question is related to when i use the get function using these settings.



The code below gave me the following error: Parsing error: The type cast expression is expected to be wrapped with parenthesis



onTermSubmit = (term) => {

youtube.get('/search',
params: {
q:term
}
);
};


But when i add parenthesis around params it works fine:



onTermSubmit = (term) => {

youtube.get('/search', {
params: {
q:term
}
});
};


Can someone explain why including the parenthesis solves this error, as well as what the error actually means in the first place?


More From » parameters

 Answers
11

Without the curly braces (they aren't parentheses), your code would be invalid JavaScript because you have a property initializer (params: {q:term}) outside an object literal, where the parser is expecting an argument for get. I'm guessing from the error message you're using TypeScript, which is trying to interpret the part after params: as a type expression.



Adding the {} fixes it because you need to wrap that property initializer in an object literal, so you're passing an object as the second argument to get.


[#51850] Monday, July 15, 2019, 5 Years  [reply] [flag answer]
Only authorized users can answer the question. Please sign in first, or register a free account.
jarrettw

Total Points: 300
Total Questions: 98
Total Answers: 103

Location: Saudi Arabia
Member since Mon, Sep 5, 2022
2 Years ago
;