普通 java 项目,不是前后端分离的那种。会写 js ,但也是局限在以前老的语法上,操作页面用的还是 jquery ,es 的新特性用的很少,由于最近需要写很多的前端代码,发现 js 太灵活导致 debug 次数多,需要很多时间。 突发奇想要不要试试 typescript ,ide 用的是 idea (没有用过 nodejs ,npm 什么的开发项目),假如在项目里建了一个 ts 文件,最后能生成对应的 js 文件么?重要的是 ts 里用了一些 es 高级特性的话,输出的 js 能能控制适配哪些浏览器么?
也不知道这么整算不算折腾。
1
thinkershare 2023-03-24 14:28:15 +08:00
正常路线,肯定可以,我 15 年左右在 ASP.NET 项目中就这样用。最终都要编译到 ES5 或者 ES6 或者 ESNext 。这些都不是什么问题,大部分第三方的 JS 包现在也支持了 TypeScript 的 typings
|
2
newaccount 2023-03-24 15:58:23 +08:00
frontend-maven-plugin
|
3
hahaFck OP @thinkershare 好的我在找找资料。
|
4
hahaFck OP @newaccount 现在项目还不是前后端分离的,就是一整个 war 包
|
5
newaccount 2023-03-24 22:56:02 +08:00
@hahaFck 不是前后端分离。用这个插件,在打包的时候调用 node ,将 ts 编译成 js 放到 war 包里面去。可以做的很多,项目里我是加了 ts 转 js ,sass 转 css ,png/jpg 转 webp ,node 能玩的都可以放进去,而且是个 struts2 的老旧项目,随便弄的。配置方式要说明还是有点麻烦,你去找找例子就好了。说简单其实也简单,就是把 node 那一套的 package.json 用到传统后端里面
|
6
newaccount 2023-03-24 22:59:37 +08:00
想适配旧浏览器,就引入 npm 的 browserslist
|
7
jingcoco 2023-03-25 08:06:32 +08:00 via Android
Rollup ,gulp 。大概思路就是一直实时转换,项目用转换后的
|