1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/silis-PromiseJS

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

PromiseJS

Введение

PromiseJS — реализация Promise в JavaScript, которая обеспечивает совместимость с интерфейсом Promise в современных браузерах и позволяет использовать его в старых версиях браузеров.

Установка

npm i silis-promisejs

Размер файлов

Файл Размер Описание
viewx.min.js.zip 0,8 КБ Сжатый код JavaScript + zip-сжатие для использования в средах с высокими требованиями к сети
viewx.min.js 1,47 КБ Сжатый код JavaScript для производственного использования
viewx.js 3,2 КБ Исходный код JavaScript для разработки и тестирования

Совместимость с браузерами

Компьютерный браузер Минимальная версия
Internet Explorer 5.5
Chrome 1
Edge 12
Firefox 3
Opera 15
Safari 4
Мобильный браузер Минимальная версия
WebView Android 1
Chrome Android 18
Firefox Android 4
Opera Android 14
iOS Safari 3.2
Samsung Internet 1.0

Пример использования Promise resolve

<!DOCTYPE html>
<html>
    <head>
        <script src="../promise.js"></script>
    </head>
    <body>
        <script>
            new Promise(function (resolve) {
                resolve("hello");
            }).then(function (result) {
                alert(result);
            });
        </script>
    </body>
</html>

Пример использования Promise reject

<!DOCTYPE html>
<html>
    <head>
        <script src="../promise.js"></script>
    </head>
    <body>
        <script>
            new Promise(function (resolve, reject) {
                reject("hello");
            }).then(function (result) {
                alert("resolve");
            }, function (error) {
                alert("Error: " + error);
            });
        </script>
    </body>
</html>

Пример Promise вложенности

<!DOCTYPE html>
<html>
    <head>
        <script src="../promise.js"></script>
    </head>
    <body>
        <script>
            new Promise(function (resolve) {
                console.log("new Promise1")
                resolve(new Promise(function (resolve) {
                    console.log("new Promise2")
                    resolve("hello");
                }));
            }).then(function (result) {
                console.log("result:" + result);
            })
        </script>
    </body>
</html>

Пример использования then с результатом

Демонстрация возврата результата первого then и передачи его во второй параметр then.

<!DOCTYPE html>
<html>
    <head>
        <script src="../promise.js"></script>
    </head>
    <body>
        <script>
            new Promise(function (resolve) {
                resolve();
            }).then(function () {
                console.log("first then");
                return "hello";
            }).then(function (result) {
                console.log("second then");
                console.log(result);
            });
        </script>
    </body>
</html>

Пример отказа от then после reject

Демонстрирует, возникает ли ошибка после reject, если нет then.

<!DOCTYPE html>
<html>
    <head>
        <script src="../promise.js"></script>
    </head>
    <body>
        <script>
            new Promise(function (resolve, reject) {
                reject("hello");
            });
        </script>
    </body>
</html>

Пример then с пустым аргументом

Демонстрируется использование then с пустыми аргументами.

<!DOCTYPE html>
<html>
    <head>
        <script src="../promise.js"></script>
    </head>
    <body>
        <script>
            new Promise(function (resolve) {
                resolve();
            }).then().then(function () {
                console.log("hello");
            });
        </script>
    </body>
</html>

ES6 Promise Bug В ES6 нативном Promise, когда выполняется метод resolve у Promise и передаётся объект с методом then, то метод then у Promise не может быть выполнен. Пример:

new Promise(function(resolve){
    resolve({
        then:function(){ console.log("resolve then"); } // волшебным образом выводит "resolve then"
    });
}).then(function(result){
    console.log("promise then"); // не выполняет вывод "promise then"
})

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

PromiseJS — реализация Promise в JavaScript, которая позволяет использовать интерфейс Promise в современных браузерах и обеспечивает совместимость с более старыми версиями браузеров. Развернуть Свернуть
MIT
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/silis-PromiseJS.git
git@api.gitlife.ru:oschina-mirror/silis-PromiseJS.git
oschina-mirror
silis-PromiseJS
silis-PromiseJS
master