Это - плохая практика для возврата частичных представлений, которые содержат JavaScript?

Возможно, потому, что ng-bootstrap построен для Angular (начиная с V2.X) и основан на машинописи (.ts).

AngularJS (V1.X) основан на ванильном JS (.js). Похоже, что вы ищете, это UI-bootstrap

13
задан Community 23 May 2017 в 12:17
поделиться

2 ответа

Если вы испытываете трудности с включением javascript в свои частичные представления, я бы переключился на простой возврат JSON в ваши вызовы ajax, чтобы вы могли обрабатывать все это на клиенте. Хотя, признаюсь, я всегда предпочитаю этот метод.

Что касается передовой практики, я всегда считал плохим возвращать сгенерированный html в вызове ajax вместо json, но это только я (НЕ стучу вас, это личное выбор). Очевидно, Microsoft не считает это плохой практикой, поскольку они специально встроили функции для ее поддержки. В любом случае, я бы не стал рассматривать включение javascript в ваш html хуже, чем просто отправка html обратно в первую очередь.

Мне любопытно, что находится в javascript?

Изменить: Чтобы быть конкретным, я предпочитаю сделать вызов ajax для получения json, а затем использовать JS на стороне клиента для создания этого «частичного представления» и вставить его в dom. В отличие от вызова ajax для получения отрисованного сервером html, чтобы клиент мог затем вставить его в dom.

Некоторые частичные представления включают формы. Я хочу, чтобы это были также формы ajax, поэтому у этих частичных представлений есть обработчики document.ready, которые превращают формы в формы ajax (через jquery.form).

Я бы подумал, что вы могли бы справиться с этим в обратном вызове / коде, который вставляет частичный вид на дом.

Изменить: если он упорядочен, эффективен, хорошо организован и работает на вас, то я бы придерживался его. Идея о том, чтобы все было красиво и компактно в частичном представлении, определенно привлекает, поэтому я не слишком беспокоюсь о нарушении каких-либо передовых практик. Меня беспокоило только то, что JS можно было бы использовать повторно, что было бы в том случае, если бы вы вставляли один и тот же скрипт снова и снова. Но в данном случае это звучит так, как будто у вас происходит большая часть разделения, поэтому я буду придерживаться этого, если вы не сможете обобщить свои скрипты и включить их в остальную часть вашего JS.

7
ответ дан 2 December 2019 в 01:21
поделиться

В конце - JavaScript должен быть в одном файле (потому что каждый http GET стоит драгоценного времени) и уменьшен. Эти ссылки могут вас заинтересовать: здесь и здесь .

Ваш способ обработки JS делает ненужную передачу данных - вместо отправки JS сделайте его статическим, кешируйте на стороне клиента и параметризуйте.

Сообщение выше дает хороший совет (JSON), как параметризовать ваш JS :)

3
ответ дан 2 December 2019 в 01:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: