@芥末的糖----------《管理系统--前端--架构逻辑》

注意的细节

  1. webpack将我们的入口app.js和index.js相结合

   2.某个路由下调controller层,如果这个界面仍需绑定事件,则封装函数,传sme.router实例化的router,来实现返回等操作

1.增:

  1>.router.go('/position_save')
  2>.使用jqury.form,来实现图片的上传
return new Promise((resolve, reject) => {
    var options = {
      "success": (result) => {
        resolve(result)
      },
      "resetForm": true,
      "dataType": "json"
    };
    $("#possave").ajaxSubmit(options)
  })

  

 

2.删   

  1>.$(this).attr('id'),然后调用后台接口

  2>.router.go(`/position?_=${id}`)利用query的传参机制达到刷新页面效果

3.改(1>>路由?传参:req.query.什么什么。2>>动态路由。。3>>go后面{}传值},req.body接受)

  1>>>(获取单条数据,后台的listone接口)  router.go('/position_update', {
       id
        })
  2>>>(修改本条数据)
      $('#posupdate').serialize()将表单字段转化为companyName=1&positionName=1&city=2&salary=2&id=5bcff1abccbc5010ec8edb95样式,后台通过post的             req.body接受数据
4查
  1>调后端接口返回数据和art-templete模板结合渲染页面

  

 
   

。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

@前端路由切换渲染局部数据思路

1.app.js里面载入路由模块。。。
2.路由模块里实例化路由对象 new SMERouter,并且定义前端界面路由,
3.调用controller暴露的接口,并且传入
new SMERouter实例化对象router进行页面跳转等,
4.如果想要获取全部数据则调
controller暴露全部数据的模块,使用art-templete模板引擎将模板和数据结合:
const listall = async ({
  router,
  res
}) => {
  let html = template.render(positionListTpl, {
    data: (await positionModel.listall()).data
  })
  res.render(html)//sme.router的设计和express的路由中间件很相似,所以将html安在之前实例化的sme.router对象里,来达到前端路由转化局部插座变化信息效果,。。。
 

  5.model层‘type:get’请求后台接口数据。。。

const listall = () => {
  return $.ajax({
    url: '/api/position/listall',
    success: (result) => {
      return result
    }
  })
}

 

前端登录注册逻辑

1.在app.js处调用controller的user的render模块

2.  

let signupClicked = true  // 点的是否是登录
let isSignin = false //是否登录  
1>> 调controller层 1.调接口判断是否登录(后台session),如果是登录则渲染登录的界面(登录和要登录都在一个模板里,isSignin判断)
            2.绑定登录注册按钮click,signupClicked 控制登录注册模板
            3.登录:serialize获取信息,调登录或者注册接口
            4.后台返回的值。如果点的登录而且成功了,然后把后台返回的username渲染。
    
 
原文地址:https://www.cnblogs.com/moonzwt/p/9833549.html