Подтвердить что ты не робот

TypeError: Попытка назначить свойство readonly. на iOS8 Safari

Привет эта страница на моем сайте отлично работает на настольном браузере, но имеет странную ошибку в Safari iOS8:

Шаблон индекса не отображается, и в консоли появляется ошибка:

TypeError: Попытка назначить свойство readonly.

и указывает на следующую строку:

}), e("rsvp/promise/all", ["../utils", "exports"], function(e, t) {
    "use strict";
    var r = e.isArray, n = e.isNonThenable;
    t["default"] = function(e, t) {
        var i = this;
        return new i(function(t, a) {
            function o(e) {
                return function(r) {
                    c[e] = r, 0===--u && t(c)
                }
            }
            function s(e) {
                u = 0, a(e)
            }
            if (!r(e))
                throw new TypeError("You must pass an array to all.");
            var l, u = e.length, c = new Array(u);
            if (0 === u) // This is the line with error
                return void t(c);
            for (var h = 0; h < e.length; h++)
                l = e[h], n(l) ? (c[h] = l, 0===--u && t(c)) : i.cast(l).then(o(h), s)
        }, t)
    }
}), e("rsvp/promise/cast", ["exports"], function(e) {
    "use strict";

Является ли это известной ошибкой для мобильного сафари, есть ли это исправление?

4b9b3361

Ответ 1

Поддерживающий RSVP здесь, извините, что вы столкнулись с этой проблемой.

Во-первых, похоже, вы используете более старую версию RSVP. Я бы рекомендовал обновить.

К сожалению, эта проблема может быть связана с https://github.com/emberjs/ember.js/pull/5629, которая, по-видимому, заключается в том, что АО для не-64-разрядных устройств под управлением iOS 8 просто сломано, используйте строгий режим. В моих наблюдениях это происходит только в определенных ситуациях, а затем только тогда, когда этот код стал оптимизирован.

Снова я не уверен, что обновление поможет вам, но вы должны это учитывать независимо. Кроме того, если проблема остается, удаление всех операторов use strict может быть лучшим вариантом.

Если вскоре не появится какое-либо решение, я, скорее всего, опубликую обновление для RSVP с удалением строгих утверждений.

Ответ 2

Вы пытались удалить все "use strict"; из своего кода? По моему мнению, это похоже только на 3 поколения iPad.