Замена JS(X) и TS
От: varenikAA  
Дата: 09.11.20 06:34
Оценка:
Есть мысль упростить работу с asp.net (razor pages). Сама по себе технология на мой взгляд нашла золоту середину между удобством разработки и сложностью.
Но если нужно реализовать сложный сценарий на клиенте, то тут определенно следует использовать что-то близкое бразуеру.
Но вот что?
1. vanilla js
2. jsx (react)
3. ts(tsx)
4. fsbolero (webasm)
5. Fable
6. WebSharper
7. Elm

1 вариант самый удобный в плане необходимости изучения лишь базовых технологий html/css + js.

2-3 требует нехилой прокачки в знании npm и сопутствующего набора инструментов, технологии сбоки, не говоря уже о еще куче ЯП и диалектов css и т.п.

4. соблазнительно, но нет данных о явных приемуществах перед оригиналом (REACTJS).
6. Давно развивается, но кажется жирноват для разработки кусочков для встраивания в cshtml
7. хорош тем, что это полноценный ЯП для бразуера, npm не помню точно, вроде нужен только для vs code. js-компилятор собственный.
минусы — чистый ФП, иногда сложно с наскока закодить. с другой стороны — дисциплина.
Re: Замена JS(X) и TS
От: BlackEric http://black-eric.lj.ru
Дата: 09.11.20 14:03
Оценка:
Здравствуйте, varenikAA, Вы писали:

Blazor?
https://github.com/BlackEric001
Re: Замена JS(X) и TS
От: Буравчик Россия  
Дата: 09.11.20 16:51
Оценка:
Здравствуйте, varenikAA, Вы писали:

AA>1. vanilla js

AA>1 вариант самый удобный в плане необходимости изучения лишь базовых технологий html/css + js.

Нет, это ужас, на этом почти невозможно нормально писать. Я уж не говорю про совместимость браузеров.

AA>2. jsx (react)

AA>3. ts(tsx)
AA>2-3 требует нехилой прокачки в знании npm и сопутствующего набора инструментов, технологии сбоки, не говоря уже о еще куче ЯП и диалектов css и т.п.

Лучше один раз разобраться с технологиями сборки, языке и нормально писать — используя кучу готовых библиотек.

Если никогда не писал на JS, начни с Vue. С помощью Vue CLI получишь готовый проект. Знания npm — пара команд для установки библиотек (остальное уже настроил vue cli). Сможешь использовать современный ES2015, который хоть как-то похож на современные языки. А также сможешь писать проект с помощью vue-компонентов, в которых нормально разделены HTML, CSS, JS, а не как в react (в JSX).

TS лучше изучать уже ПОСЛЕ JS.
Best regards, Буравчик
Re[2]: Замена JS(X) и TS
От: varenikAA  
Дата: 10.11.20 03:33
Оценка:
Здравствуйте, Буравчик, Вы писали:

Б>Если никогда не писал на JS, начни с Vue. С помощью Vue CLI получишь готовый проект. З А также сможешь писать проект с помощью vue-компонентов, в которых нормально разделены HTML, CSS, JS, а не как в react (в JSX).


Пробовал, но не понравилась архитектура, также почему-то больше нравится определять разметку на том же ЯП, что и основной код, мне так удобно, аналогичное мнение нашел на https://ru.reactjs.org/docs/introducing-jsx.html :

Вместо того, чтобы искусственно разделить технологии, помещая разметку и логику в разные файлы, React разделяет ответственность с помощью слабо связанных единиц, называемых «компоненты», которые содержат и разметку, и логику. Мы ещё вернёмся к теме компонентов в следующей главе, но если идея держать разметку в JavaScript коде всё ещё вызывает у вас дискомфорт, этот доклад может переубедить вас.

Re[3]: Замена JS(X) и TS
От: Буравчик Россия  
Дата: 10.11.20 15:51
Оценка: 6 (1)
Здравствуйте, varenikAA, Вы писали:

AA>Пробовал, но не понравилась архитектура


Что значит, не понравилась архитектура?
Внутри (архитектурно) Vue и React похожи как две капли воды. Реактивность одинаковая, компонентный подход — одинаковый, управление стейтом почти одинаковое (redux / vuex).

AA>также почему-то больше нравится определять разметку на том же ЯП, что и основной код, мне так удобно, аналогичное мнение нашел на https://ru.reactjs.org/docs/introducing-jsx.html :


В целом, React отличный выбор. Всяко лучше, чем дополнительные надстройки с помощью других языков.
Best regards, Буравчик
Re[4]: Замена JS(X) и TS
От: varenikAA  
Дата: 11.11.20 08:03
Оценка:
Здравствуйте, Буравчик, Вы писали:

Б>Что значит, не понравилась архитектура?


Б>В целом, React отличный выбор. Всяко лучше, чем дополнительные надстройки с помощью других языков.


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

Наконец, нашел более менее интро человеческое по реакту. тут хоть понятно как это jsx обрабатывается. babel же.
ссылка
Даже, вот авторы mobx планируют в 6 версии работать без надстроек которых нет в стандарте.
Re[4]: Замена JS(X) и TS
От: varenikAA  
Дата: 12.11.20 10:09
Оценка:
Здравствуйте, Буравчик, Вы писали:

Б>Что значит, не понравилась архитектура?


Вчера последний раз штурмовал реакт + мобикс. в итоге плюнул, когда
в функциональном элементе вот такой код не сработал <input value="1" onchange="handle">
просто забивал предыдущее значение на каждый клик
понял, что нужно городить полный реакт компонент, вернулся на русский сайт вью прочитал интро и заплакал:

<div id="app">
<p class="title">{{ obj.name }}</p>
<input class="input" v-model="obj.newName">
<button class="button" v-on:click="changeName">Change Name</button>
</div>
<script>
let person = { name: "Alice", newName: "Alice" };
var app = new Vue({
el: '#app',
data: {
obj: person
},
methods: {
changeName: function (event) {
this.obj.name = this.obj.newName
}
}
})
</script>


Это было так просто!!!
Спасибо за наводку!
Re[2]: Замена JS(X) и TS
От: Ватакуси Россия  
Дата: 23.03.21 13:52
Оценка:
Здравствуйте, Буравчик, Вы писали:

Б>Здравствуйте, varenikAA, Вы писали:


AA>>1. vanilla js

AA>>1 вариант самый удобный в плане необходимости изучения лишь базовых технологий html/css + js.

Б>Нет, это ужас, на этом почти невозможно нормально писать. Я уж не говорю про совместимость браузеров.

Вполне можно. Тот же бутрстрап и прочии плюшки подключаются и вуаля.

PS: совместимости нету и в сторонних библиотеках, всё равно нужны костыли.
Коо иу-то дзиман-о суру ё-ни наримас га...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.