我们正在努力建立一个可插入的'在客户端使用vue.js的Java webapp。
假设我们希望在生产中没有NodeJ的情况下使用以下服务器端应用程序简化架构(并使用Java和Osgi但在我看来它并不重要,它可能是PHP,.Net或wathever ):
webapp负责检查服务器端的可用webapp插件,然后在索引文件中公开相应的JS文件。例如:
整个webapp不是通过nodejs构建的,但是3个示例中的每一个都是使用node和webpack单独构建的。
我们如何在遵循这些约束的情况下实现插件的构建过程:
对于每个webapp插件,我们认为我们需要找到一种方法来构建webapp插件的所有.vue文件,并从输出文件中排除所有其他依赖项。由于我们是节点和vuejs世界的新手,我们怎么能实现这个目标呢?
感谢您的帮助。
答案 0 :(得分:1)
您可能想尝试代码拆分:
代码拆分是这样一种想法,即捆绑[a
.js
文件并将所有Vue.js代码捆绑在一起]可以分段为较小的文件,允许用户只在需要时下载所需的代码。(...)
分割Vue.js应用程序的代码的关键是异步组件。这些是组件定义(包括其模板,数据,方法等)异步加载的组件。
(...)
我们需要Webpack的帮助才能动态加载[组件]。 (...)Webpack有一个[import]([方法]的实现,并将其视为代码分割点,在创建包时将请求的模块放入单独的文件中。
来源:Code Splitting With Vue.js And Webpack,是实施代码拆分的非常有用的指南。
以下是指南的作者最终动态加载组件的main.js
代码。如果我正确阅读了指南,那么注册组件的方式的这种改变是实现代码拆分所必需的唯一改变。您的Webpack配置中不需要进行任何更改。
new Vue({
el: '#app',
components: {
ExampleAsyncComponent: () => import('./ExampleAsyncComponent.vue') /* This is the changed part. */
}
});