почему я получаю сообщение об ошибке при запуске моей программы: «даты не определены», когда даты определены во внешней библиотеке js? - PullRequest
0 голосов
/ 01 мая 2020

Я пишу программу с выпадающим меню, которое я импортировал из библиотеки. моя цель - получить день и месяц и использовать их для вычисления знака зодиа c. позже у меня будет множество случайных гороскопов, и это тоже будет отображаться. Однако после выполнения кода я получаю сообщение об ошибке: «даты не определены». Как правильно указать дату и месяц в раскрывающемся меню?

var astro_sign

function getzodiac() {

var day = parseInt(document.getElementsByClassName('bear-dates').value);
var month = document.getElementsByClassName('bear-months').value;
var year = document.getElementsByClassName('bear-years').value;

 if (month == "December"){ 

        if (day < 22) 
        astro_sign = "Sagittarius"; 
        else
        astro_sign ="Capricorn"; 
    } 

и затем я хочу напечатать вывод:

document.getElementById("zodiac").innerHTML="You were born under the sign of" + " "+astro_sign+"!"

вот мое тело:

<h5 id="zodiac"> </h5> 
<button class="button" onclick="getzodiac()">get my zodiac!</button> 

Вот как даты определяются в библиотека js файл:

function dates(tags)
{

    if(tags == '')
    //If the dates('') paramenter is empty, add no tags
    {
        var dates = "";
        var i;
        for (i = 1; i < 32;  i++ )
        {
            dates += i;
        }
    }
    else
    //If the dates('option') has paramenter, add the tags to it
    {
        var dates = "";
        var i;
        for (i = 1; i < 32;  i++ )
        {
            dates += "<" + tags +">" + i +"</" + tags +">";
        }   
    }    

1 Ответ

0 голосов
/ 01 мая 2020

В коде, вставленном в HTML, имеется ссылка на функцию date (), которая объявлена ​​в файле календаря. js, но вы не экспортировали ее с помощью ключевого слова export. Экспорт MDN

export dates(){
    //some code
}

далее вы можете импортировать его в HTML код скрипта

import dates from './calendar.js'

, теперь вы можете использовать функцию date () в своем коде. то же самое относится и к другим функциям, объявленным в календаре. js, months () и years ()

...