求前端方向的同学也一起投简历过来~~
#43 楼 @mingle5566 恩 现在用的 angular 自带的 route,略弱。 就像 @xhj6 说的 ui-route 我值得拥有~
#40 楼 @zzz6519003 rage comic 能充分表现遇到问题刹那间一抹蛋蛋的忧伤
具体应用是在“添加商品模块” -> "展开商品分类选择器" -> "在商品分类选择器中点击‘商品分类管理 (弹窗)’ "
那么当前大概的$scope 树如下 root │─ 商品模块 (controller) │─│─ 商品分类选择器 (directive) │─ 弹窗 (directive) │─│─ 商品分类管理 (directive)
那么当商品分类管理中对数据进行修改,而商品模块及其分类选择器必须同时响应。我们在这种情况下使用了 notification。
友好速搭的店铺后台在生产环境的 js 引用主要分为三个层次:
/lib/angular/1.2.28/angular.min.js
只有当升级 angular 的时候,用户才需要重新加载
/dist/lib-201502041711/lib.js
基础库,变动频率比业务代码低很多
/dist/201502121456/js/main.js
主要业务代码,每次版本更新都会重新打包
其他……
总结,在与业务层面无关的底层库,我们使用不同的版本号作为路径来避免缓存。 与业务层面相关的代码,在每次 grunt 打包项目的时候,使用时间戳作为路径来避免缓存。
使用时间戳将所有业务代码打包成 main.js 的方式,缺点是每次更新用户都需要重新下载所有代码(即使部分功能与上个版本完全一致)。但优点是在此时间戳下的资源完全独立,不用烦恼太多依赖问题,方便进行版本切换。
另,像友好速搭官网 https://youhaosuda.com/
虽然我们不用 rails~~,但我们也使用了 (The Asset Pipeline)[http://guides.rubyonrails.org/asset_pipeline.html] 的方式,来避免缓存
/manage/dist/main.f36197098e.js
#1 楼 @flowerwrong 1、可以通过 ng-bind,ng-show 等避免因为变量拼接造成的闪烁问题。 2、目前通过将基础数据直接输出到页面,避免启动时多次请求 api 来优化加载。
猛士们快来~