问: angular 切 vue 的一些选型问题 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
anonymous2351d00
V2EX    问与答

问: angular 切 vue 的一些选型问题

  •  
  •   anonymous2351d00 2022-11-18 16:18:03 +08:00 1728 次点击
    这是一个创建于 1058 天前的主题,其中的信息可能已经有所发展或是发生改变。

    前提

      1. 组件库 ant design 可以 使用 vant 替换
      1. rxjs Http 可以使用 axios 替换
      1. angular 自带的打包 可以使用 vite 替换

      1. 状态管理用什么?
      1. angular 自己写的 cli 脚手架 vue 如何实现?
    12 条回复    2023-01-11 15:23:15 +08:00
    anonymous2351d00
        1
    anonymous2351d00  
    OP
       2022-11-18 16:19:36 +08:00
    状态管理想用 一个 轻量 又 好用,简单一点的
    anonymous2351d00
        2
    anonymous2351d00  
    OP
       2022-11-18 17:13:54 +08:00
    cli 就是 拉下包来 node 环境去运行然后通过模板和一些选项自动生成项目的那个东西
    heishu
        3
    heishu  
       2022-11-18 17:59:07 +08:00
    打包的话 vite 和 webpack 都可以;
    1. 状态管理,vue2 用 vuex ,vue3 用 pinia
    2. cli 没自己实现过,但是是可以实现的;不过现在生成 vue 项目时的哪些选项还不能满足你吗?
    christin
        4
    christin  
       2022-11-18 18:06:25 +08:00 via iPhone
    vue 的状态管理没几个 想选也没有
    anonymous2351d00
        5
    anonymous2351d00  
    OP
       2022-11-18 18:13:06 +08:00
    @heishu 嗯,需要以 npm 包的形式定制一下菜单,路由守卫,等一些常用的服务:用户啊,token 啊,权限啊,之类的,需要集中管理,创建项目直接可用,后续我这里更新了 npm 包他们升级一下就好的那种


    @christin 好的大佬,我去搜一搜
    gouflv
        6
    gouflv  
       2022-11-18 20:07:10 +08:00 via iPhone   1
    vue3 的话,composition api 配合 provide 就能解决大部分数据管理和共享
    linkopeneyes
        7
    linkopeneyes  
       2022-11-19 00:09:31 +08:00   1
    状态管理的话,让 ref 声明在 vue 外就是简单的状态管理了,不喜欢的话可以跟 ng 的 service 一样用 vue 的依赖注入,虽然不如 ng ,但是总归能用,ng 的脚手架就没法代替了,那么多命令只能自己实现一下?不过为什么要从 ng 转到 vue 呢
    charlie21
        8
    charlie21  
       2022-11-21 06:17:32 +08:00 via iPhone   1
    一个由 ref 声明的变量因为它是响应式的所以它就相当于一个 observable ,它可以直接从一个 js 文件导出,这就相当于是一个与视图层解耦的服务,可以被任何一个组件消费并共享状态

    https://vuejs.org/guide/scaling-up/state-management.html#simple-state-management-with-reactivity-api
    anonymous2351d00
        9
    anonymous2351d00  
    OP
       2022-11-21 11:03:25 +08:00
    @charlie21
    @sjhhjx0122

    有这两种够了,妥妥够用了,感觉好像 react dispatch action->state->view
    anonymous2351d00
        10
    anonymous2351d00  
    OP
       2022-11-21 11:09:53 +08:00
    @sjhhjx0122 自动生成项目的 cli ,想着用 nodejs 搭配一个类似 freeemarker 的模板引擎,有推荐吗大佬?
    anonymous2351d00
        11
    anonymous2351d00  
    OP
       2023-01-11 14:25:55 +08:00
    @heishu 感谢,pinia 好用,就是有一个问题,假设我直接 store.user.name = 'heishu' 不适用 store.setUser({name:'heishu'}) 会发生什么问题?
    heishu
        12
    heishu  
       2023-01-11 15:23:15 +08:00
    @anonymous2351d00 可以看看 pinia 的简单例子使用方法,https://pinia.vuejs.org/introduction.html#basic-example
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2734 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 11:50 PVG 19:50 LAX 04:50 JFK 07:50
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86