现在的架构是 laravel+jquery+bootstrap,JS 的代码维护起来有点蛋疼,怎么改造成模块化的方式?
seajs 已经很久不更新了,没有太多选用的想法。
requirejs 情况也差不多,除了这两个外,还有其他方案吗
1
batyu OP 补充一下,页面用的 laravel 内置的 blade 模板引擎
|
2
chenz197 2020-06-18 17:07:58 +08:00
你们是套模板开发吗..
|
3
chenz197 2020-06-18 17:08:47 +08:00
blade.. 之前一家公司也是用这个 很尴尬
|
5
mlxj 2020-06-18 17:09:32 +08:00
重构
|
6
TangMonk 2020-06-18 17:09:49 +08:00
用 browserify + gulp 可以试试
|
9
wangyzj 2020-06-18 17:18:49 +08:00
一定要动吗?
jquery 挺好的 |
10
batyu OP @wangyzj 没打算弃用 JQUERY,只是想着能不能基于 JQUERY 来做模块化。平台实现了两套购物逻辑:登录状态和未登录状态,很多代码都混在一起,挺乱的,维护起来也别扭
|
13
baxtergu 2020-06-18 17:38:12 +08:00
引入 requirejs+backbone+handlebars 模板做模块化改造成本小一点,但是要看原先的数据渲染是放在服务端做的还是前端做的,要是服务端做的话改造还是比较大
|
15
baxtergu 2020-06-18 17:52:48 +08:00
@batyu 是的,可能也就是技术栈相近一点改造成本没那么高。或者也可以试试新框架做渐进式的改造,慢慢改,这点上面 vue 做的比 react 好。
|
16
coderabbit 2020-06-18 17:54:00 +08:00
体量不大放弃 pc 端吧。维护也累!
|
17
zjsxwc 2020-06-18 17:54:04 +08:00 via Android
requirejs 吧,至少 npm 包都兼容 amd 所以可以直接拿来用
|
18
lneoi 2020-06-18 17:56:35 +08:00
后端渲染 模块化不就是由后端负责,输出时判断一下选择性输出就行了?
|
20
jinwyp 2020-06-18 18:44:15 +08:00
看了以下日期 是 2020 年, 直接用 es6 的模块啊,webpack 打包 可以不用 vue react 没问题啊
|
21
ccraohng 2020-06-18 19:07:38 +08:00 via Android
wrbpack 多入口打包 资源信息注入
|
22
batyu OP |
23
neutrino 2020-06-19 08:22:57 +08:00 via Android
webpack 是可以的,js src 那坨放在 resource 里,用 laravel mix 生成 public js img 等,然后在 blade 中用 asset 引入。最后每个模板文件的最后自己写页面特意的 js 就可以了。
|
24
qq1340691923 2020-06-19 09:10:04 +08:00
上 nuxt 或者 nest 啊
|
25
zhuweiyou 2020-06-19 09:35:48 +08:00
system.js
|
26
chenz197 2020-06-19 09:46:52 +08:00
我知道呀 就是 laravel , 按你描述的就是文件都是 xxx.blade.php 这种吧
|
27
batyu OP @neutrino 这个只是用到 laravel mix 的混压缩吧,没有模块化的东西在里面
@qq1340691923 服务端渲染……暂时还没打算动 PHP @zhuweiyou 感谢!这个第一次了解到,我去看看 |
28
TimPeake 2020-06-19 11:13:20 +08:00
其实 jq+require+backbone+其他任何 jqUI 框架 这种模式就挺好的 之前单位老项目 模块很好
|
29
qq1340691923 2020-06-19 12:10:20 +08:00
nuxt,nest 就可以服务端渲染
|