Copywriter, webmaster, menadżer produktu, architekt, niezależny programista.
年前,写了《某互联网租车平台复盘——如何hold住一整个行业》(文章加了密码,一般人看不到)。 这一篇主要是对 […]
nodejs的服务器,访问根目录的txt文件。
无法访问。
我一直以为是nodejs服务器的反向代理造成的。
今天发现不是。
而是nginx服务器的配置造成的。
做了一些修改
location ~ .*.(js|css|txt)?$ #这里加入|txt即可。
{
expires 12h;
error_log off;
access_log /dev/null;
}
Kontynuuj iterację w silniku widoków.
Po tej iteracji silnik widoków stał się całkowicie architekturą mikrojądra. Architektura silnika formularzy i silnika blokowego jest taka sama.
Silnik formularzy był iterowany w zeszłym tygodniu. Dodano selektor adresu. Niezbyt zadowolony, zróbmy to najpierw i porozmawiajmy o tym później. Tytuł formularza implementuje konfigurację warunkową i nie musi być ograniczony do stałej wartości.
OMS również dokonał kilku iteracji. Dodano rodzaj zamówienia (bezpłatny). Zmodyfikowano model zamówień.
System zarządzania produktami również przeszedł kilka iteracji, dodając typ produktu i taksonomię klasyfikacji zamówień.
Zawsze czułem, że coś jest nie tak z moim silnikiem formularzy, ale nigdy tego nie znalazłem.
Dopiero wczoraj odkryłem, że elementów formularza skonfigurowanych przy użyciu mojego silnika formularzy nie można ze sobą połączyć.
Dzisiaj powtórzono tę operację, aby rozwiązać ten problem i umożliwić łączenie elementów formularza.
Kiedy dane określonego elementu formularza ulegną zmianie w wyniku operacji użytkownika, dane lub widok powiązanego elementu formularza również ulegną odpowiedniej zmianie.
<label
v-for="(item, i) in radioGroup.items" :key="i">
<input
class=""
type="radio"
:name="radioGroup.field"
v-model="radioGroup.value"
:value="item.key"
/>
{{ item.name }}
</label>
<!--
radioGroup:the json of the radios.
radioGroup.items:the json of every radio item.
radioGroup.field:the field of the radio used.
radioGroup.value:the value of the radioGroup.
item.key:the key of every radio item.
item.name:the name of every radio item.
-->