Меню

Var app new vue ошибка

The CLI should have created a file called main.js. In there you’ll have something a bit like this that creates a new Vue instance:

new Vue({
  render: h => h(App)
}).mount('#app')

It might use an el property instead of calling mount and it may mention store or router if you chose to include those when creating the project. It doesn’t really matter, the key thing is that this is where the root Vue instance gets created. Unless you’re writing an atypical application you shouldn’t need to use new Vue again. You certainly shouldn’t be using it inside a .vue file.

The App referenced in the code I wrote above should be the component in App.vue, which should be imported earlier in main.js.

Then there’s your App.vue. This line is a bit odd:

import App from './components/Navigation-Drawer.vue'

Technically it isn’t wrong but it’s really confusing. Rename App to some a bit more sensible, like NavigationDrawer. You’ll need to update everywhere it’s used, including the template.

Next up, Navigation-Drawer.vue. There are several problems here.

Firstly, get rid of the id="app" on the template, that just shouldn’t be there and may cause problems.

To implement onclick="openNav()" in Vue you’d instead write @click="openNav" and then define openNav within the methods section of the component.

The script section should look something like this:

<script>
    export default {
        name: 'NavigationDrawer',

        props: {
            msg: String
        },

        // Note that this is a function when used on a component
        data () {
            return {
                name1: 'name 1',
                name2: 'name 2',
                name3: 'name 3',
                name4: 'name 4'
            }
        },

        methods: {
            openNav() {
                console.log('openNav called')
            },

            closeNav() {
                console.log('closeNav')
            }
        }
    }
</script>

Hopefully that’ll be enough to get it all working.

The original linting errors were caused because:

  1. You were creating a variable called app but never using it.
  2. You were trying to call new Vue but hadn’t imported Vue. In general you need to import things if you want to be able to access them from inside a .vue file.

However, the linting errors were just side-effects of the more serious problems I’ve outlined above.

**»10:7 error ‘app’ is assigned a value but never used no-unused-vars»
I know there is some similar question due this. But I dont know why my code doesnt work at all.

So the error is at the main.js file line 10.
I thought I’m using my «app» with el:’app’ or in export fault with ‘app’

I have 2 files

**App.vue:****






    <template>
      <div id="app" v-cloack>
        <img src="./assets/999.jpg">
        <h1>{{ msg }}</h1>
        <ul>
          <input type="file" ref="myFile" @change="selectedFile"><br/>
          <textarea v-model="text"></textarea>
      </div>
    </template>


    <script>
    //import HelloWorld from './components/HelloWorld';
    //import main from './main.js';
    export default {
      name: 'app',
      data: ()=> {
        //
          return{
              msg: 'Datei uploaden'

          }
      },
    }
    </script>

    <style>

    </style>'''





**main.js:**




    import Vue from 'vue'
    import App from './App.vue'
    import vuetify from './plugins/vuetify';

    Vue.config.productionTip = false
    Vue.config.devtools = false;
    export default {
      name: 'app',
      data: ()=> {
      var app;
      app =new Vue({

    el: '#app',
    vuetify,
    render: h => h(App),
    data: {
      text:''
    },

    methods:{
        selectedFile() {
          console.log('selected a file');
          console.log(this.$refs.myFile.files[0]);

          let file = this.$refs.myFile.files[0];
          if(!file || file.type !== 'text/plain') return;

          // Credit: https://stackoverflow.com/a/754398/52160
          let reader = new FileReader();
          reader.readAsText(file, "UTF-8");
          reader.onload =  evt => {
            this.text = evt.target.result;
          }
          reader.onerror = evt => {
            console.error(evt);
          }

        }
    }
  })
  }
}
//.$mount('#app')

I really struggle since a few days. I would be very happy if anybody can help
Thanks

asked Apr 15, 2020 at 18:48

GEK's user avatar

1

You can add /* exported variableName */ to ignore the eslint since you are using app variable outside your file

so above your app variable add /* exported app */

to read more https://eslint.org/docs/rules/no-unused-vars

Change main.js to this code

import Vue from 'vue'
import App from './App.vue'
import vuetify from './plugins/vuetify';

Vue.config.productionTip = false;
Vue.config.devtools = false;

var app = new Vue({
    el: '#app',
    vuetify,
    render: h => h(App),
    data: {
        text: ''
    },
    methods: {
        selectedFile() {
            console.log('selected a file');
            console.log(this.$refs.myFile.files[0]);

            let file = this.$refs.myFile.files[0];
            if (!file || file.type !== 'text/plain') return;

            // Credit: https://stackoverflow.com/a/754398/52160
            let reader = new FileReader();
            reader.readAsText(file, "UTF-8");
            reader.onload = evt => {
                this.text = evt.target.result;
            }
            reader.onerror = evt => {
                console.error(evt);
            }

        }
    }
})

export default app

answered Apr 15, 2020 at 18:58

Quantumass's user avatar

QuantumassQuantumass

8066 silver badges11 bronze badges

Банальный пример
{{ message }} (в дивах с id="app")

var app = new Vue({
  el: '#app',
  data: {
    message: 'Hello Vue!'
  }
})

Не работает из за конфликта (я так понимаю конфликт в виде переменной {{ message }}) vue и laravel, как это исправить?


  • Вопрос задан

    более трёх лет назад

  • 425 просмотров

Пригласить эксперта

{
data:{…},
…,
delimiters:[«[[«,»]]»]
}

Или можете добавить @ перед vue переменной, но на самом деле это все извращения.

Используйте vue компоненты и vue template в нем, передавая нужные переменные в компоненты через props или api.


  • Показать ещё
    Загружается…

29 янв. 2023, в 03:07

300000 руб./за проект

29 янв. 2023, в 02:16

700000 руб./за проект

29 янв. 2023, в 01:54

5000 руб./за проект

Минуточку внимания

Логотип Vue
Vue.js

  • Обучение

    • Документация

      • Руководство
      • API
      • Рекомендации
      • Примеры
      • Книга рецептов
    • Видео курсы

      • Vue Mastery

      • Vue School

  • Экосистема

    • Помощь

      • Форум
      • Чат
      • Митапы
    • Инструментарий

      • Инструменты разработчика
      • Vue CLI
      • Vue Loader
    • Официальные плагины

      • Vue Router
      • Vuex
      • Vue Server Renderer
    • Новости

      • Еженедельные новости
      • Roadmap
      • События
      • Twitter
      • Блог
      • Вакансии
      • Сообщество разработчиков
  • Команда
  • Ресурсы

    • Партнёры
    • Темы
    • Awesome Vue
    • Найти пакеты для Vue
  • Поддержать Vue

    • Единоразовые пожертвования
    • Повторяющиеся взносы
    • Магазин футболок
  • Переводы

    • English
    • 中文
    • 日本語
    • 한국어
    • Português
    • Français
    • Tiếng Việt
    • Español
    • Bahasa Indonesia

Эта документация для версий v2.x и ранее.
Для v3.x, документация на русском здесь.

Экземпляр Vue

Создание экземпляра Vue

Каждое приложение начинается с создания нового экземпляра Vue с помощью функции Vue:

var vm = new Vue({
// опции
})

Хоть Vue и не реализует паттерн MVVM в полной мере, архитектура фреймворка им во многом вдохновлена. Поэтому переменную с экземпляром Vue традиционно именуют vm (сокращённо от ViewModel).

При создании экземпляра Vue необходимо передать объект опций. Большая часть этого руководства посвящена описанию, как можно использовать эти опции для достижения желаемого поведения. Полный список опций можно посмотреть в справочнике API.

Приложение Vue состоит из корневого экземпляра Vue, создаваемого с помощью new Vue, опционально организованного в дерево вложенных, повторно используемых компонентов. Например, дерево компонентов для приложения TODO-списка может выглядеть так:

Корневой экземпляр
└─ TodoList
├─ TodoItem
│ ├─ TodoButtonDelete
│ └─ TodoButtonEdit
└─ TodoListFooter
├─ TodosButtonClear
└─ TodoListStatistics

Подробнее о системе компонентов мы поговорим позднее. А сейчас запомните, что все компоненты Vue также являются экземплярами Vue и поэтому принимают такой же объект опций (за исключением нескольких специфичных для корневого).

Данные и методы

Когда экземпляр Vue создан, он добавляет все свойства, найденные в опции data, в систему реактивности Vue. Поэтому представление будет «реагировать» на их изменения, обновляясь в соответствии с новыми значениями.

// Наш объект data
var data = { a: 1 }

// Объект добавляется в экземпляр Vue
var vm = new Vue({
data: data
})

// Получение свойства из экземпляра
// возвращает то же значение из исходных данных
vm.a === data.a // => true

// Изменение свойства экземпляра
// влияет на оригинальные данные
vm.a = 2
data.a // => 2

// ... и наоборот
data.a = 3
vm.a // => 3

Когда значения изменяются, представление будет переотрисовано. Но обратите внимание, свойства в data будут реактивными, только если они существовали при создании экземпляра. Это значит, если добавить новое свойство, например:

vm.b = 'hi'

То изменения в b не будут вызывать никаких обновлений. Если вы знаете, что свойство вам понадобится позже, но изначально оно пустое или несуществующее, нужно просто установить начальное значение. Например:

data: {
newTodoText: '',
visitCount: 0,
hideCompletedTodos: false,
todos: [],
error: null
}

Единственным исключением здесь является использование Object.freeze(), который предотвращает изменение существующих свойств, что также означает невозможность отслеживать изменения системой реактивности.

var obj = {
foo: 'bar'
}

Object.freeze(obj)

new Vue({
el: '#app',
data: obj
})

<div id="app">
<p>{{ foo }}</p>
<!-- мы теперь не можем обновить `foo`! -->
<button v-on:click="foo = 'baz'">Изменить</button>
</div>

Кроме свойств объекта data, экземпляры Vue предоставляют ряд служебных свойств и методов экземпляра. Их имена начинаются с префикса $, чтобы отличаться от пользовательских свойств. Например:

var data = { a: 1 }
var vm = new Vue({
el: '#example',
data: data
})

vm.$data === data // => true
vm.$el === document.getElementById('example') // => true

// $watch — это метод экземпляра
vm.$watch('a', function (newValue, oldValue) {
// Этот коллбэк будет вызван, когда изменится `vm.a`
})

С полным списком свойств и методов экземпляра Vue можно ознакомиться в справочнике API.

Хуки жизненного цикла экземпляра

Каждый экземпляр Vue при создании проходит через последовательность шагов инициализации — например, настраивает наблюдение за данными, компилирует шаблон, монтирует экземпляр в DOM, обновляет DOM при изменении данных. Между этими шагами вызываются функции, называемые хуками жизненного цикла, с помощью которых можно выполнять свой код на определённых этапах.

Например, хук created можно использовать для выполнения кода после создания экземпляра:

new Vue({
data: {
a: 1
},
created: function () {
// `this` указывает на экземпляр vm
console.log('Значение a: ' + this.a)
}
})
// => "Значение a: 1"

Существуют и другие хуки, вызываемые на различных стадиях жизненного цикла экземпляра, например mounted, updated и destroyed. Все хуки вызываются с контекстной переменной this, ссылающейся на вызывающий экземпляр Vue.

Не используйте стрелочные функции в свойствах экземпляра и в коллбэках, например created: () => console.log(this.a) или vm.$watch('a', newVal => this.myMethod()). Так как стрелочные функции не имеют собственного this, то this в коде будет обрабатываться как любая другая переменная и её поиск будет производиться в областях видимости выше до тех пор пока не будет найдена, часто приводя к таким ошибкам, как Uncaught TypeError: Cannot read property of undefined или Uncaught TypeError: this.myMethod is not a function.

Диаграмма жизненного цикла

Ниже представлена диаграмма жизненного цикла экземпляра. Необязательно понимать её полностью прямо сейчас, но по мере изучения и практики разработки к ней полезно будет обращаться.

Жизненный цикл экземпляра Vue

Project scenario:

Today, in the process of reviewing the basis of Vue, I tried to introduce and use Vue with traditional HTML and native memory, and then found that I really pulled it. The memory is not only vague, but also confused. Vue2 mixed with vue3 is there! Next, let’s see how to report the error.

Problem Description:

The HTML structure is as follows:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <script src="https://cdn.jsdelivr.net/npm/[email protected]"></script>
  </head>
  <body>
    <div id="app"></div>
  </body>
  <script>
    const app = Vue.createApp({
        data() {
            return {
                message: '666'
            }
        },
        template: "<h2>{{message}}</h2>"
    })
    app.mount("#app")
  </script>
</html>

Good guy, 666 didn’t render. Just click and report me the error
Uncaught TypeError: Vue.createApp is not a function。
I’m still wondering. I think it’s ok if createapp creates a Vue application and mount it to the node?Why, vue.createapp is not available yet

Cause analysis:

Later, I read the document and found that I had mixed up vue.createapp and mount, which are the writing methods of vue3, but I introduced vue2
it is clearly written on the official website. Vue2 uses new and is an EL mount node
vue2 is written as follows:

 var app = new Vue({
   el: '#app',
   data: {
     message: '666',
   },
   template: '<h2>{{message}}</h2>',
});

The following is the way vue3 is written

 const app = Vue.createApp({
     data() {
         return {
             message: '666'
         }
     },
     template: "<h2>{{message}}</h2>"
 })
 app.mount("#app")

Read More:

Я работаю с Vue.js, и он по какой-то причине просто перестал работать. Кажется, я не могу найти свою ошибку — смотрел на нее часами.

Это мой HTML-файл — просто зависимости и таблица, отображающая данные в users.

<!DOCTYPE html>
<html>
    <head>
        <title>Hello, world!</title>
    </head>
    <body>
        <script
            src = "https://code.jquery.com/jquery-3.3.1.min.js"
            type = "text/javascript">
        </script>
        <link 
            href = "https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css"
            rel = "stylesheet" 
        >
        <script
            src = "https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"
            type = "text/javascript">
        </script>
        <script
            src = "https://cdn.jsdelivr.net/npm/vue"
            type = "text/javascript">
        </script>

        <script src = "/js/app.js" type = "text/javascript"></script>

        <div class = "container">
            <div id = "app">
                <table class = "table">
                    <thead>
                        <tr>
                            <th>Name</th>
                            <th>Personal Number</th>
                            <th>Volcano Amount</th>
                        </tr>
                    </thead>
                    <tbody>
                        <tr v-for = "user in users">
                            <td><% user.name %></td>
                            <td><% user.personal_number %></td>
                            <td><% user.volcano_amount %></td>
                        </tr>
                    </tbody>
                </table>
            </div>
        </div>
    </body>
</html>

И это файл app.js, который просто запускает экземпляр Vue, создает массив users и выполняет запрос AJAX, который обновляет массив users.

var app = new Vue({
    el: '#app',
    data: {
        users: []
    },
    mounted: function() {
        var vue_object = this;
        $.getJSON('users', function(data) {
            vue_object.users = data;
        });
    },
    delimiters: ['<%', '%>']
});

Результат крайне неутешительный — все в простом HTML. В таблице 2 строки — заголовок и строка с <% user.xxx %>, как будто Vue не существует.

Я предполагаю, что это означает, что что-то не работает, хотя сам app.js запускается (я пробовал добавить console.info, и он распечатал)

Надеюсь, у вас есть хорошие идеи 🙂

В настоящее время я пытаюсь создать компонент Vue.js. Когда я запускаю приложение, появляется ошибка. Сообщение об ошибке, как показано ниже:

enter image description here

<template>
    <div class="hello" id="app">
         <span style="font-size:30px;cursor:pointer;" onclick="openNav()">☰</span>

        <div id="mySidenav" class="sidenav">
            <a href="javascript:void(0)" class="closebtn" onclick="closeNav()">&times;</a>
            <a href="#">{{name1}}</a>
            <a href="#">{{name2}}</a>
            <a href="#">{{name3}}</a>
            <a href="#">{{name4}}</a>

            <div id="bottom">
                <input v-model="name1" style="margin-left: 25px;max-width: 50%;">
                <input v-model="name2" style="margin-left: 25px;max-width: 50%;">
                <input v-model="name3" style="margin-left: 25px;max-width: 50%;">
                <input v-model="name4" style="margin-left: 25px;max-width: 50%;">
            </div>

        </div>
        <h2>Lorem ipsum dolor sit amet</h2>
        <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque elit velit, dictum in urna et,
            vulputate ornare sapien. Phasellus sed metus sed dolor hendrerit iaculis.
            Cras eget libero sit amet massa aliquet dignissim. Vivamus faucibus lorem sit amet semper luctus.
            Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. In at placerat
            felis,
            id finibus mauris. Proin maximus orci quis lacus pellentesque, ac dignissim sapien vestibulum. Maecenas
            pharetra
            vulputate semper.
            Suspendisse potenti. Donec nisi nisi, aliquam eget felis euismod, semper dictum ligula.
            Aenean mauris enim, iaculis vel malesuada vel, pulvinar et risus. Fusce sit amet orci eget diam commodo
            ultricies sed vel elit.
            Curabitur quis scelerisque est.</p>
    </div>
</template>

<script>
    //Vue App
    var app = new Vue({
        el: '#app',
        data: {
            /*
            navlink: [
                {id: 1, link: "https://www.tfbern.ch"}, 
                {id: 2, link: "https://www.tfbern.ch"},
                {id: 3, link: "https://www.tfbern.ch"},
                {id: 4, link: "https://www.tfbern.ch"}
                ]
            */

            name1: 'name 1',
            name2: 'name 2',
            name3: 'name 3',
            name4: 'name 4'
        }
    })
    export default {
        name: 'NavigationDrawer',
        props: {
            msg: String
        }
    }

    //Navbar Animation
   /* 
   function openNav() {
        document.getElementById("mySidenav").style.width = "250px";
    }

    function closeNav() {
        document.getElementById("mySidenav").style.width = "0"; -->
    }
     */
</script>

<!-- Add "scoped" attribute to limit CSS to this component only -->
<style scoped>

</style>

Навигационно- Drawer.vue


<template>
  <div id="app">
    <img alt="Vue logo" src="./assets/logo.png">
    <HelloWorld msg="Welcome to Your Vue.js App"/>
    <App msg="test">
  </div>
</template>

<script>
import HelloWorld from './components/HelloWorld.vue'
import App from './components/Navigation-Drawer.vue'
export default {
  name: 'App',
  components: {
    HelloWorld,
    App
  }
}

</script>

<style>
#app {
  font-family: Avenir, Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: center;
  color: #2c3e50;
  margin-top: 60px;
}
</style>

App.vue

2 ответа

Лучший ответ

Это ошибки от Eslint. См. https://eslint.org/docs/rules/no-unused-vars и https://eslint.org/docs/rules/no-undef для деталей.

Чтобы удалить эти ошибки, добавьте эту строку непосредственно перед строкой, в которой вы инициализируете приложение.

    // eslint-disable-next-line
    var app = new Vue({ 
    // rest of the code 

Убедитесь, что строка с eslint-disable-next-line закомментирована. Это скажет эслинту игнорировать эту строку, а не задерживать ее.


1

Albert Pinto
17 Фев 2020 в 10:28

CLI должен был создать файл с именем main.js. Там у вас будет что-то вроде этого, создающее новый экземпляр Vue:

new Vue({
  render: h => h(App)
}).mount('#app')

Он может использовать свойство el вместо вызова mount и может упоминать store или router, если вы решили включить их при создании проекта. Это не имеет значения, главное, что именно здесь создается корневой экземпляр Vue. Если вы не пишете нетипичное приложение, вам не нужно использовать new Vue снова. Вы, конечно, не должны использовать его внутри .vue файла.

App, указанный в коде, который я написал выше, должен быть компонентом App.vue, который должен быть импортирован ранее в main.js.

Тогда есть твой App.vue. Эта строка немного странная:

import App from './components/Navigation-Drawer.vue'

Технически это не так, но это действительно сбивает с толку. Переименуйте App в более разумное, например, NavigationDrawer. Вам нужно будет обновлять везде, где он используется, включая шаблон.

Далее Navigation-Drawer.vue. Здесь есть несколько проблем.

Во-первых, избавьтесь от id="app" в шаблоне, который просто не должен присутствовать и может вызвать проблемы.

Чтобы реализовать onclick="openNav()" в Vue, вместо этого вы должны написать @click="openNav", а затем определить openNav в разделе methods компонента.

Секция скрипта должна выглядеть примерно так:

<script>
    export default {
        name: 'NavigationDrawer',

        props: {
            msg: String
        },

        // Note that this is a function when used on a component
        data () {
            return {
                name1: 'name 1',
                name2: 'name 2',
                name3: 'name 3',
                name4: 'name 4'
            }
        },

        methods: {
            openNav() {
                console.log('openNav called')
            },

            closeNav() {
                console.log('closeNav')
            }
        }
    }
</script>

Надеюсь, этого будет достаточно, чтобы все заработало.

Первоначальные ошибки распечатки были вызваны тем, что:

  1. Вы создавали переменную с именем app, но никогда не использовали ее.
  2. Вы пытались позвонить new Vue, но не импортировали Vue. В общем, вам нужно импортировать вещи, если вы хотите иметь доступ к ним из файла .vue.

Однако ошибки в связывании были лишь побочными эффектами более серьезных проблем, которые я изложил выше.


0

skirtle
19 Фев 2020 в 15:23

I got the same error. I declared metadata as @leonardovilarinho suggested, but it still get the same error.

Here is my router:

var router = new VueRouter({
    mode: 'history',
    base: '/account/',
    linkActiveClass: 'active',
    meta: {
        permission: 'any',
        fail: '/',
    },
    routes: [
        {
            path: '/contribution',
            component: contribution,
            meta: {
                permission: 'any',
                fail: '/',
            },
        },
        {
            path: '/deposits',
            component: deposits,
            meta: {
                permission: 'any',
                fail: '/',
            },
        },
        {
            path: '/withdraw',
            component: withdraw,
            meta: {
                permission: 'any',
                fail: '/',
            },
        },
        {
            path: '/settings',
            component: settings,
            meta: {
                permission: 'any',
                fail: '/',
            },
        }
    ]
});

And this is how I add it:

var app = new Vue({
    el: '#app',
    router: router,
    ......

Any ideas?

#javascript #vue.js #vuejs2

Вопрос:

Я пытаюсь начать использовать vue.js и возникли проблемы с его настройкой. В моем пакете.json я установил последнюю версию "vue": "^2.6.14", , и в моей main.js папке я включил вот так

 import Vue from "vue";
var app = new Vue({
    el: '#app',
    data: {
      message: 'Hello Vue!'
    }
  })
 

и в свой html-файл я добавил это:

 <div id="app">
  {{ message }}
</div>
 

когда webpack компилируется, он создает это main.js файл, но {{ сообщение }} не изменен на Hello Vue!. Что я здесь делаю не так, что это не работает?

Также в инструментах разработки не отображается ошибка.

Комментарии:

1. возможно, вам захочется переместить свойство данных и шаблон= {{message}} в App.vue вместо main.js и index.html .

2. Проверьте консоль инструментов разработки вашего браузера на наличие ошибок

3. @Фил спасибо, но никакой ошибки там нет

4. Вам придется пройти все шаги, которые вы предпринимаете… как вы начали проект? Вы используете Vue CLI? Какие команды вы используете для запуска или создания своего проекта? Какой адрес вы открываете в своем браузере?

5. Как вы можете видеть здесь , ваш код работает просто отлично

Ответ №1:

Попробуй

 import Vue from "vue";
var app = new Vue({
    el: '#app',
    data () {
      return {
        message: "Hello Vue!"
      }
    }
  }).$mount('#app');
 

Это решило бы вашу проблему

Комментарии:

1. где бы я это добавил? до конца файла?

2. Я отредактировал свой ответ, вам нужно заменить объект данных для работы

Ответ №2:

 import Vue from "vue";

new Vue({
   data() {
       return {
          message: 'Hello Vue!',
       };
   },
}).$mount('#app');
 

Комментарии:

1. к сожалению, по-прежнему ничего не показывает, я также добавил window.Vue = Vue; , но ничего не отображается

2. Вы уверены, что включаете файл js в свой html..

3. да, я проверил исходный код и main.js загружено — это тот контент, который я опубликовал в вопросе.

4. Да, братан, ты не включил свой js-файл в html. работает нормально. codepen.io/pen/?editors=1111

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

А вот еще интересные материалы:

  • Яшка сломя голову остановился исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного где ошибка
  • Vanguard ошибка kadena keesler
  • Vacuum firmware выдает ошибку