ergare17/tasks 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

ergare17/tasks

Composer 安装命令:

composer create-project ergare17/tasks

包简介

Ergare Tasks

README 文档

README

Scrutinizer Code Quality StyleCI Build Status Latest Stable Version Total Downloads Latest Unstable Version License Monthly Downloads Daily Downloads composer.lock Dependency Status

Tasques

MP7:

  • Webs interessants:

  • CRUD de tasques per línia de comandes (vegeu més abaix notes sobre les comandes):

    • Comanda task:create:
      • Dos opcions amb nom de tasca o sense nom i executar un assistens pregunti pel nom
    • Idem que l'anterior però Task:delete
    • Comanda task:list: mostrar la llista de tasques
    • Opcional task:edit i task:show
    • Crear els tests necessàris per les comandes. Utilitzar Mocks per tal de poder respondre a preguntes
  • TDD: https://laracasts.com/series/testing-vue

MP8: Crud per interfície JSON API

  • Només treballem amb Javascript/Vue (no hi ha controlador només vista)
  • La vista es comunica amb el servidor(backend) via peticions API JSON
  • URL: /tasks
  • Components Vue: resources/asssets/js/components. Crear:
    • TaskViewsComponent que inclou els següents components:
      • MessageComponent per mostrar missatges flash
      • WidgetComponent per utilitza widget adminlte
      • TaskComponent: mostra les tasques dind del widget
    • Comunicació entre widgets i events.
  • Widgets específics: select: multiselect
  • TDD: tots els endpoitns de l'API tenen el seu corresponent test

MP9:

  • URL: /tasks_php
  • CRUD per interfície web
    • Totes les operacions han de tenir el test específic
    • Una vista per create i una per edit.
  • Protegir les tasques utilitzant autenticació per web (sessió) i autenticació per API (Token)
  • Afegir suport per a Social Login
  • Afegir suport per authorizació: roles i permissos, gates Laravel. Paquet laravel-permission

TODO. Refactoritazació

Comparar 3 interfícies:

  • WEB
  • JSON API
  • CLI

i aprofitar codi (aproximació DRY no WET):

Qüestions a tenir en compte:

  • Modificar fitxer viwe Laravel sidebar.php per modificar el menu i tenir dos opcions de menú que apuntin a l'exercici de MP9 i al de MP7

TODO /Notes professor

MP8: Ajax | HTTP CLIENT AXIOS | Working wiht APIs: JSON

Promise Based Axios:

TODO:

  • CRUD sencer: tenim LIST falta:
    • SHOW
    • STORE
    • EDIT
    • DELETE

JSON APIS:

Mostrar els errors (catch de promises, missatges d'error de la pròpia API)

  • Que mostrar sinó hi ha cap TODO (base de dades buida)
  • Errors HTTP (500, 404, timeouts per que no funcioni connexió) <- Útil per provar mètode abort Laravel

MP8: Vue.js

TLTR:

COMPONENTS

  • tasks
    • adminlte-widget
      • HEADER: title
      • CONTENT: Task list
      • FOOTER:
        • create-task
        • Filters
  • message component

Done

Commands

CLI: another interface (like WEB or API JSON)

https://laravel.com/docs/5.5/artisan

php artisan make:command CreateTask

API:

  1. Wizard:
php artisan make:task

Preguntar pel nom de la tasca

  1. Nom de la tasca com a paràmetre
php artisan make:task taskname

Instal·lació vue test utils

Install npm libraries:

npm install --save-dev vue-test-utils mocha mocha-webpack jsdom jsdom-global expect

Create folder for Tests and file setup.js

tests/Javascript/setup.js

Example JSON:

https://github.com/acacha/relationships/blob/master/tests/Javascript/setup.js

File content:

require('jsdom-global')()

Add mpm script test on package.json:

"test" : mocha-webpack --webpack-config=node_modules/laravel-mix/setup/webpack.config.js --require tests/Javascript/setup.js tests/Javascript/**/*.spec.js

Hooking into Laravel mix: Observe --webpack-config=node_modules/laravel-mix/setup/webpack.config.js

Folder for Javascript Tests:

tests/Javascript

Execute tests:

npm run test

PHPStorm configuration

  • New run configuration mocha
  • Change mocha executable to mocha-webpack!!!

Example test:

Exemple sense Laravel Mix:

Resources

Recursos

Vuetable:

npm i babel-plugin-transform-runtime babel-preset-stage-2 babel-preset-es2015

https://github.com/ratiw/vuetable-2-with-laravel-5.4/blob/master/resources/assets/js/components/MyVuetable.vue

统计信息

  • 总下载量: 7
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: HTML

其他信息

  • 授权协议: MIT
  • 更新时间: 2017-12-01

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固