Архив метки: web

Пробую Vue.js

Ниже писал как тестировал React.js, в итоге не привилось от слова совсем. Всё надумано и усложнено.  Для реализации элементарных вещей типа вывода динамического списка загруженного из вне требуются феерические велосипеды. В итоге не смог придумать ни одного примера использования где было бы проще и удобнее чем с использованием чистого javascript + jquery. Теперь задумался в сторону фреймворка Vue.js В нём понравилась идея компонентности (кирпичиков из «своих» тегов) для создания страницы. Пока тестировал, получился вот такой скриптик, демонстрирующий базовые возможности:

<!doctype html>
<head>		
        <meta charset="UTF-8">
        <title>VUE.js test</title>		
        <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>        
</head>
<body>
<div id="app">
  {{ message }}
  <span v-bind:title="title">Hello</span>
  <ol>
    <li v-for="todo in todos">
      {{ todo.text }}
    </li>      
  </ol>    
  <button v-on:click="addItem">Добавить элемент</button>
  <input v-model="message">
  <brick></brick>
  <brick></brick>
</div>        
<script>   
Vue.component('brick', {
    template: '<div>Это кирпичик</div>'
});    
var app = new Vue({
  el: '#app',
  data: {
    message: 'Привет'+ new Date().toLocaleString(),
    title: 'title me'+ new Date().toLocaleString(),
    msg:"DDD",
    todos:[
        {text:'Один',key:"wedwe"},
        {text:'Два'},
        {text:'Три'}
    ]
  },
  methods: {
        addItem: function () {
          this.todos.push({text: this.message});
        }
  },  
});    

</script>    
</body>
</html>        

Демо тут

Использование Composer в проектах на PHP

Composer — это менеджер внешних библиотек для вашего проекта. Например, если вы используете jquery, jqueryui, какие-то другие библиотеки, то для того чтобы не тащить их при переносе проекта, не следить за их обновлением и актуальностью, достаточно использовать Composer. При новой инсталляции проекта достаточно будет выполнить

composer install

для генерации начального composer.json  (создание нового проекта) достаточно выполнить:

composer init

добавить нужные пакеты в папку vendor можно:

composer require components/jquery:3.3.1
composer require components/jqueryui:1.12.1
composer require components/font-awesome:5.4.2
composer require components/bootstrap:4.1.1

Обновить пакеты можно:

composer update

Ну и далее как использовать в своем коде PHP:

require_once vendor/autoload.php
 
Или JS:
 
<script src="/vendor/components/jquery/jquery.js"></script>

Ну и в догонку. Если у вас из проекта нет доступа к папке vendor, а нужно для использования например css и js непосредственно на странице, можно сделать симлинк, например что-то вроде:

pavel@pavelpc:/var/www/webuseorg4/public$ ln -s ../vendor/components/ components
pavel@pavelpc:/var/www/webuseorg4/public$

 

Тихо и незаметно вышло обновление для «Учет ТМЦ в организации»

Выпущен новый релиз ПО для учета оргтехники и ТМЦ в организации. Вероятно стабильный. Прошу дать обратную связь по ошибкам и недоработкам.

Из нового:

  • проделана большая работа по устранению дыр безопасности и общему улучшению кода. (в основном  Солодягиным Сергеем)
  • осуществлен переход на Bootstrap 3 и JqGrid 5.1
  • переделано формирование меню

Планы на будущее:

  • Создание WIki документации
  • Дальнейшее улучшение кода и устранение ошибок
  • Быть может создание мобильного клиента

Документация: http://xn--90acbu5aj5f.xn--p1ai/?page_id=1202

Скачать:  https://github.com/donpadlo/webuseorg3/releases

 

Получение кода html страницы по заданному URL (Lazarus, FreePascal)

Lazarus_IDE_GTK2_Linux Без сторонних компонентов обойтись к сожалению не удалось.  Модуль который рекомендуют использовать в интернетиках fphttpclient — заставить работать не удалось — падал в access violation… Поэтому пришлось подключать компоненты synaptic:

var httpsend;
function GetWebPageContent(const Url: string): String;
var fs: TStringList; HTTP: THTTPSend;
begin
   fs := TStringList.Create;
   HTTP := THTTPSend.Create;
   try
      HTTP.HTTPMethod('GET', Url);
      fs.LoadFromStream(Http.Document);
      Result := fs.Text;
   finally
      fs.Free;
      http.Free;
   end;
end;

 

Тихо и незаметно вышло обновление «Учет оргтехники и ТМЦ в браузере».

Основные изменения:

  • устранение ошибок
  • группировка помещений
  • новое меню (адаптировано для планшетов)
  • хранилище документов

Снимок экрана из 2015-05-26 11:52:22

Описание здесь. Забрать можно здесь.