Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

希望小程序环境支持将wxml、json、wxss、js四个文件合并为一个 #216

Open
ljianc opened this issue Nov 27, 2024 · 4 comments

Comments

@ljianc
Copy link

ljianc commented Nov 27, 2024

我看这个框架本身是支持将这四类内容写在一个文件里的,
希望小程序环境也可以,四个文件切换来切换去的非常影响开发时间。
你们团队是否有权推动这个事?

@LastLeaf
Copy link
Member

glass-easel 目前并不支持四合一。不过可以考虑支持,不会很难。

但在小程序上使用可能会麻烦一些。因为小程序代码需要在微信的服务器上编译,相对于 glass-easel 的纯开发阶段编译要更为复杂。

@LastLeaf
Copy link
Member

需要说明的是 core 接口实际上并不是四合一。 core 接口实际上是底层逻辑,不涉及实际的文件目录结构,所以可以把代码组织成任意的样子。以目前视角看,这在小程序环境下是不可接受的,因为小程序的服务器端编译逻辑与 glass-easel 的 webpack 编译逻辑完全不同。即:

wxml/wxss/js/json -> [glass-easel-miniprogram-webpack-plugin] -> webpack bundle
wxml/wxss/js/json -> [小程序服务器端编译链路] -> 小程序代码包

如果需要支持四合一,需要在 glass-easel-miniprogram-adapter 和 glass-easel-miniprogram-webpack-plugin 的基础上,将已经分开的四个文件重新合并起来。即:

一种新的 component 格式文件 -> [新的编译链路] -> wxml/wxss/js/json -> [glass-easel-miniprogram-webpack-plugin] -> webpack bundle

(当然上述两步编译可以最终合并到同一个模块里面完成。)

@ljianc
Copy link
Author

ljianc commented Nov 28, 2024

恰巧skyline项目也是在初始阶段,是否可以考虑推动从skyline开始支持四合一。 这个项目意义也主要是用于小程序,传统web开发估计没几个人会放弃react、vue来用这个。

@LastLeaf
Copy link
Member

LastLeaf commented Nov 28, 2024

四合一并不容易实现。尤其对于小程序环境。

做出来应该已经是很久之后了。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants