Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 08.09.2021, 15:56
Интересующийся
Отправить личное сообщение для Lexx Посмотреть профиль Найти все сообщения от Lexx
 
Регистрация: 06.09.2021
Сообщений: 10

Можно еще вопрос?
Когда делаю вложенность все работает
Test().p(
Test().span('test').span('span')
).toString()


Но как сделать защиту или замену запятой на + при вводе
Test().p(
Test().span('test'),
Test().span('span')
).toString()

при таком варианте выводит только первый span и корректно заrрывает </p>
была бы переменная, я сделал бы через .replace, а тут хз как быть
Можно просто подсказать куда копать Большое спасибо

Последний раз редактировалось Lexx, 08.09.2021 в 16:06.
Ответить с цитированием
  #12 (permalink)  
Старый 08.09.2021, 16:05
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Lexx,
Test().p что это?
Ответить с цитированием
  #13 (permalink)  
Старый 08.09.2021, 16:14
Интересующийся
Отправить личное сообщение для Lexx Посмотреть профиль Найти все сообщения от Lexx
 
Регистрация: 06.09.2021
Сообщений: 10

Сообщение от рони Посмотреть сообщение
Lexx,
Test().p что это?
это я разнес, целиком выглядит так
Test().p(Test().span('test'),Test().span('span')).toString()


По сути на выходе должно быть так "<p><span>test</span><span>span</span></p>"

Но так получается или с + вместо запятой или если убрать это объявление
Test().p(Test().span('test'),Test().span('span')).toString()
Ответить с цитированием
  #14 (permalink)  
Старый 08.09.2021, 16:16
Интересующийся
Отправить личное сообщение для Lexx Посмотреть профиль Найти все сообщения от Lexx
 
Регистрация: 06.09.2021
Сообщений: 10

Вот не могу понять как убрать лишний ,Test() или как-то заменить запятую на +
Ответить с цитированием
  #15 (permalink)  
Старый 08.09.2021, 17:12
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Lexx,
<body>
    <script>
        function Templater() {
            let str = '';
            let tags = {
                getFullName(tagSpan, up = '') {
                    return tagSpan.length ? tagSpan.map(a => `${a}${up}`).join(' ') : '';
                },
                span(...tagSpan) {
                    str += `<span>${this.getFullName(tagSpan, '!!!')}</span>`
                    return this;
                },
                p(...tagSpan) {
                    str += `<p>${this.getFullName(tagSpan)}</p>`
                    return this;
                },
                toString() {
                    return str
                }
            };
            return tags;
        }
        const template = Templater().p(
            Templater().span('Hello'),
            Templater().span('World')
        )
        document.body.append(template);
        const temp = Templater().p(
            Templater().span('test').span('span')
        ).toString();
        document.write('<br>')
        document.body.append(temp);
    </script>
</body>
Ответить с цитированием
  #16 (permalink)  
Старый 08.09.2021, 17:20
Интересующийся
Отправить личное сообщение для Lexx Посмотреть профиль Найти все сообщения от Lexx
 
Регистрация: 06.09.2021
Сообщений: 10

спасибо, буду разбирать что да как
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужна помощь с Массивами и функциями Mikekrd Элементы интерфейса 0 23.02.2016 10:20
Помогите нужна помощь срочно mahes1234 Общие вопросы Javascript 0 11.01.2016 23:57
Нужна помощь по слайдеру seoguru Работа 3 28.01.2013 22:02
Помогите новичку плиз!!!!!!!!!!!!! Юрий Манылов Общие вопросы Javascript 1 18.12.2012 11:37
Нужна помощь. Artem88 Общие вопросы Javascript 0 13.12.2012 22:22