неверный порядок импорта скрипта, функция не определена

1

У меня есть компонент map.vue (map.vue) следующим образом:

<script> 
import '../../assets/js/map.js' 

export default {
    name: 'home',
    data () {
        return {
            init_data: {},
        }
    },
    created: function() {
         this.init_data = window.get_init_data(this.view, function(response) {
               document.title = response.body.page_title;
               init_map(some_arguments);
         });
    }
}
</script>

map.js:

const key = ******;
function init_map(some_args) {
    ...
}

Ошибка:

[Vue warn]: Ошибка в созданном hook: "ReferenceError: init_map не определен"

И на самом деле, проверяя исходный код на функцию, которую он вызывал перед ее подписями.

Примечание. Я не хочу включать map.js в записи webpack, потому что мне нужен только этот скрипт в одном компоненте (map.vue).

  • 0
    попробуйте require( '../../assets/js/map.js')
  • 0
    Уже сделал @OlegShleif, проблема остается. Спасибо
Показать ещё 2 комментария
Теги:
vue.js
vuejs2
webpack

2 ответа

1
Лучший ответ

Попробуй это

test.js

export function writeHello() {
    console.log('hello');
}

*****. Вю

import {writeHello} from './../test.js';

export default {
    created() {
        writeHello();
    }
}
  • 0
    Есть ли разница между export и export default ? Оба работали
  • 1
    @HulaHula export - это место, где вы называете класс или функцию (или несколько), которые затем можно imported , указав определение в фигурных скобках, как указано выше. экспорт по умолчанию означает, что если точное определение не предоставлено, оно автоматически вернет значение по умолчанию при импорте. Примером может служить import foo from '/path/to/bar' где foo становится экспортом по умолчанию.
0

Map.js отсутствует экспорт:

export default function init_map(some_args) {
...
}
  • 0
    Здравствуйте, спасибо, но проблема остается, функция вызывается до подписи

Ещё вопросы

Сообщество Overcoder
Наверх
Меню