• Jobs
  • Bootcamp
  • About Us
  • For professionals
    • Home
    • Jobs
    • Courses and challenges
    • Questions
    • Teachers
    • Bootcamp
  • For business
    • Home
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

88
Views
Uncaught TypeError: x is not a function when Importing Factory Function

I have a factory function called updateUI which I am importing into index.js. When imported, the instance of updateUI is recognized, however I am given an error when attempting to call updateUI's methods.

Putting all of the code into index.js gets rid of the bug, but it still has me scratching my head. It seems the problem occurs only when importing. Why are the method's not being recognized?

index.js

import '../../dist/output.css';
import { updateUI } from './display.js';
    
    
const test = updateUI('Daly City');
test.setBackground();

display.js

import { getWeather } from './apiCall';

const updateUI = async(location) => {
    const res = await getWeather(location, process.env.apiKEY);

    function updateCity() {
        const city = document.querySelector('#location');
        city.innerHTML = res.name;
    };

    function updateCurrentTemp() {
        const currentTemp = document.querySelector('#current-temp');
        const farenheit = Math.round((9/5)*(res.main.temp - 273) + 32);
        currentTemp.innerHTML = farenheit;
    };

    function updateConditions() {
        const condition = document.querySelector('#weather');
        condition.innerHTML = res.weather[0].description;
    };

    function setBackground() {
        const date = new Date();
        let time = date.getTime();
        console.log(time);
    };

    return { updateCity, updateCurrentTemp, updateConditions, setBackground }
};

export { updateUI };

9 months ago · Juan Pablo Isaza
1 answers
Answer question

0

Question answered by @code in the comments.

9 months ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post job Pricing Our process Sales
Legal
Terms and conditions Privacy policy
© 2023 PeakU Inc. All Rights Reserved.