_rendernode не является функцией в обновленной версии ember для рендеринга первого и последнего узла компонента.

Я обновляюсь с ember 2.5.0 до 2.18.0, но _renderNode больше не доступен. Есть ли другая функция для получения такого же результата?

Что ты пытаешься сделать?

Lux 11.04.2018 18:33

Хотите получить первый и последний узел компонента. Чтобы получить детали и настроить их.

Mudit 14.04.2018 12:16

и почему ты хочешь это сделать? вы можете получить элемент html с помощью this.element. для дочерних компонентов вы должны указать данные в шаблоне. Если вы дадите больше контекста для своего варианта использования, мы, возможно, сможем вам помочь.

Lux 14.04.2018 17:55
0
3
46
1

Ответы 1

Есть несколько вещей, которые мы можем сделать, чтобы помочь вам в этом процессе, но сначала нужно будет помочь вам с определенным контекстом, прежде чем мы начнем.

Прежде всего, в EmberJS (и во многих других библиотеках и фреймворках javascript) существует соглашение, согласно которому любой метод с префиксом _ считается частный. Обычно это означает, что его не следует использовать, потому что он, скорее всего, будет удален в будущей версии.

Во-вторых, следует отметить, что у Ember есть концепция выпуска LTS, вы можете узнать больше о том, как работает процесс LTS на эта страница, на веб-сайте Ember.

Я бы порекомендовал на данном этапе сделать следующее:

  • Обновите свое приложение (используя ember-cli-update) до каждой LTS-версии один за раз, при этом не забудьте удалить все устаревшие версии по мере продвижения. Подробнее об устаревших версиях здесь
  • Найдите любое место, где вы используете частные методы (с префиксом _), и удалите их.

Тогда вы сможете без проблем выполнить обновление. Надеюсь, это поможет!

Спасибо, я обновляюсь со старой версии и основных функций, полагающихся на частные функции. Я просто искал альтернативный метод, чтобы можно было переписать функциональность.

Mudit 14.04.2018 12:14

@Mudit Я бы порекомендовал следовать своим шагам, как я изложил. Не обновляйте дальше следующего LTS за раз и удаляйте устаревшие версии по мере их появления. Также для записи мне не удалось найти никакой документации для _renderNode, поэтому вам нужно будет предоставить больше контекста относительно того, чего вы пытаетесь достичь, или, по крайней мере, предоставить ссылку на то, какую функцию вы на самом деле вызываете, чтобы получить более прямую информацию. ответы на ваш вопрос :)

real_ate 15.04.2018 16:48

Другие вопросы по теме