Напишите быстрое и современное мини-приложение с задачами, используя Iris MVC и Vue.js

Vue.js - это интерфейсный фреймворк для создания веб-приложений с использованием javascript. Он имеет невероятно быстрый модуль визуализации Virtual DOM.

Iris - это внутренняя структура для создания веб-приложений с использованием языка программирования Go (отказ от ответственности: автор здесь). Это один из самых быстрых и популярных веб-фреймворков. Мы хотим использовать это для выполнения наших «задач».

Инструменты

Языки программирования для нас - всего лишь инструменты, но нам нужен безопасный, быстрый и «кроссплатформенный» язык программирования для поддержки нашего сервиса.

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

Установите язык программирования Go

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

Зависимости

В прошлом было написано много статей, которые побуждают разработчиков не использовать веб-фреймворк, потому что он бесполезен и «плох». Я должен сказать вам, что такого не существует, это всегда зависит от (веб-фреймворка), который вы собираетесь использовать. В производственной среде у нас нет времени или опыта, чтобы кодировать все, что мы хотим использовать в приложениях, и если бы мы могли, уверены ли мы, что можем работать лучше и безопаснее, чем другие? Вкратце: Хорошие фреймворки - полезные инструменты для любого разработчика, компании или стартапа, а «плохие» фреймворки - пустая трата времени, совершенно ясно.

Вам понадобятся две зависимости:

  1. Vue.js для наших клиентских требований. Загрузите его отсюда, последняя версия v2.
  2. Iris Web Framework для наших серверных требований. Можно найти здесь, последняя v12.

Если у вас уже установлен Go, просто выполните go get github.com/kataras/iris/v12@latest, чтобы установить Iris Web Framework.

Начинать

Если все мы находимся на одной странице, пора узнать, как создать живое приложение для задач, которое будет легко развернуть и расширить еще больше!

Мы собираемся использовать приложение vue.js todo, которое использует локальное хранилище браузера и не имеет никаких пользовательских функций, таких как синхронизация в реальном времени между вкладками браузера, вы можете найти исходную версию в документации vue.

  • веб / общедоступный / js / app.js
  • веб / общедоступный / index.html
  • todo / item.go
  • todo / service.go
  • веб / контроллеры / todo_controller.go
  • web / main.go

Прочтите комментарии в исходном коде, они могут быть очень полезны

На стороне клиента (vue.js)

Давайте добавим наше представление, HTML.

На стороне сервера (радужная оболочка)

Наша модель представления.

Наш сервис.

Здесь мы собираемся использовать некоторые функции MVC веб-фреймворка iris, но вы можете сделать то же самое и со стандартным API.

И, наконец, конечная точка нашего основного приложения.

Запустите только что созданный веб-сервер Iris, выполнив go run main.go с текущего пути (% GOPATH% / src /% your_folder% / web /).

$ go run main.go
Now listening on: http://localhost:8080
Application Started. Press CTRL+C to shut down.
_

Откройте одну или несколько вкладок браузера по адресу: http: // localhost: 8080 и получайте удовольствие!

Скачать исходный код

Весь проект, все файлы, которые вы видели в этой статье, находятся по адресу: https://github.com/kataras/iris/tree/master/_examples/tutorial/vuejs-todo-mvc

использованная литература

Https://vuejs.org/v2/examples/todomvc.html (с использованием локального хранилища браузера)

Https://github.com/kataras/iris/tree/master/_examples/mvc (репозиторий с примерами mvc и обзором функций)

Еще раз, спасибо

С Новым годом и еще раз спасибо за ваше терпение :) Не стесняйтесь задавать любые вопросы и оставлять отзывы (я очень активный разработчик, поэтому вас здесь услышат!)

Не забудьте также заглянуть в мой средний профиль и твиттер, я там тоже публикую кое-что (полезное) :)