20.10.2015, 09:56
|
|
junior
|
|
Регистрация: 29.11.2011
Сообщений: 3,924
|
|
Сообщение от trikadin
|
почему не можешь-то?
|
конечно же я так пробовал Если так делать, то ошибка
Цитата:
|
'import' and 'export' may only appear at the top level
|
---
Сообщение от FINoM
|
Можешь пояснить? Что происходит при импорте этого модуля? Скрипт "ждет" пока коллбек не сработает?
|
именно это и хочу. К сожалению, пока ничего не получилось.
В веб-паке есть лоадеры:
Цитата:
|
bundle: Wraps request in a require.ensure block (callback)
promise: Wraps request in a require.ensure block (promise)
async-module: Same as bundle, but provides a way to handle script loading errors. Wraps request in a require.ensure block (callback, errback)
|
http://webpack.github.io/docs/list-o...html#packaging
но, пока ничего не получилось.
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук
|
|
20.10.2015, 10:05
|
|
Новичок
|
|
Регистрация: 05.09.2010
Сообщений: 2,298
|
|
nerv_, а почему бы не инициализировать приложение после срабатывания коллбека? Это не то, что ты хочешь, но проблему с импортами решит.
|
|
20.10.2015, 10:24
|
|
junior
|
|
Регистрация: 29.11.2011
Сообщений: 3,924
|
|
Сообщение от FINoM
|
а почему бы не инициализировать приложение после срабатывания коллбека? Это не то, что ты хочешь, но проблему с импортами решит
|
я думал об этом. Однозначно решит. Просто это будет костылем. Я могу его поставить один раз, но делать это постоянно не имею желания
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук
|
|
20.10.2015, 14:21
|
|
Модератор
|
|
Регистрация: 27.04.2010
Сообщений: 3,417
|
|
nerv_, затупил, да. Тогда так:
export let GeoObject;
ymaps.ready(() => {
GeoObject = class GeoObject extends ymaps.GeoObject {
/**
* @param {Object} [feature]
* @param {Object} [options]
* @see [url]https://tech.yandex.ru/maps/doc/jsapi/2.1/ref/reference/GeoObject-docpage/[/url]
*/
constructor(feature, options) {
super(feature, options);
}
};
console.log('GeoObject', GeoObject);
});
Немного многословнее, но это не костыль, а норм практика.
|
|
20.10.2015, 14:23
|
|
Модератор
|
|
Регистрация: 27.04.2010
Сообщений: 3,417
|
|
Сообщение от nerv_
|
я думал об этом. Однозначно решит. Просто это будет костылем. Я могу его поставить один раз, но делать это постоянно не имею желания
|
Да ладно, нормально это. У меня на сервере, скажем, сначала инициализируется DB (классы моделей), потом -- контроллеры (тоже классы).
|
|
20.10.2015, 14:29
|
|
junior
|
|
Регистрация: 29.11.2011
Сообщений: 3,924
|
|
допустим. А если я захочу унаследовать от GeoObject что-либо еще?
т.е. буду импортить GeoObject в другой модуль? Я получу undefined?
Вопрос сводится к асинхронному es6 импорту/экспорту
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук
|
|
20.10.2015, 14:57
|
|
Модератор
|
|
Регистрация: 27.04.2010
Сообщений: 3,417
|
|
nerv_, почитай мою статью
Если ты в другом модуле сделаешь
import { GeoObject } from './GeoObject';
то у тебя создастся биндинг на [[ExportsObject]].GeoObject. И в момент, когда значением переменной GeoObject станет класс GeoObject, то и значением [[ExportsObject]].GeoObject станет класс GeoObject. Но в прикладном смысле -- да, ему точно так же придётся ждать, пока у GeoObject появится значение (т. е. ждать инициализации ymaps). Я бы на твоём месте подождал бы этого на глобальном уровне (на уровне точки входа в приложение), а уже потом начинал бы импортить модули, которым нужен ymaps.
Сообщение от nerv_
|
Вопрос сводится к асинхронному es6 импорту/экспорту
|
Ты можешь использовать System.loader, но это пока жуткий драфт :С
|
|
04.11.2015, 19:10
|
|
Профессор
|
|
Регистрация: 23.12.2013
Сообщений: 1,856
|
|
|
|
04.11.2015, 19:15
|
|
Новичок
|
|
Регистрация: 05.09.2010
Сообщений: 2,298
|
|
Сам я не большой поклонник О.о, но не понимаю, чем он им так не угодил. Они выпилили фичу, но не дали никакой альтернативы. Теперь нет ни одной нативной функции, которая слушает изменения всех свойств объекта. Прокси не считается.
|
|
04.11.2015, 19:19
|
что-то знаю
|
|
Регистрация: 24.05.2009
Сообщений: 5,176
|
|
Цитата:
|
the feature is used on 0.0169% of Chrome pageviews, according to
chromestatus.com
|
Такие интересные, а они что ожидали что эту возможность будут сейчас юзать на 100% что ли? Оно и понятно, ведь как можно юзать то, что есть только в хроме.
|
|
Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
Как сделать HTML фичи? |
2chan |
Events/DOM/Window |
6 |
26.09.2014 18:50 |
|
|
|