从不同的子域加载 Vue.js 异步组件

Posted

技术标签:

【中文标题】从不同的子域加载 Vue.js 异步组件【英文标题】:Vue.js async component loading from different subdomain 【发布时间】:2019-03-19 21:08:30 【问题描述】:

我有一个 Laravel 项目,我想知道如何配置 webpack 以从不同的子域加载 javascript 块?

例如,如果www.mysite.com 上有一个网站,它会从static.mysite.com 加载 javascript 资产。

我的 webpack.min.js 文件如下所示:

mix.js([
    'resources/assets/js/file1.js',
    'resources/assets/js/file2.js',
], staticBuildPath + '/js/main.js')
    .webpackConfig(
        output: 
            chunkFilename: "js/[id].chunk.js"
        
     );

但问题是它想从www.mysite.com 加载块文件。

【问题讨论】:

webpack and vue async component from different project / domain的可能重复 【参考方案1】:

我找到了解决办法:

mix.js([
    'resources/assets/js/file1.js',
    'resources/assets/js/file2.js',
], staticBuildPath + '/js/main.js')
    .webpackConfig(
        output: 
            chunkFilename: "js/[id].chunk.js",
            publicPath: '//' + process.env.DOMAINS_STATIC + '/'
        
     );

DOMAINS_STATIC 是我在 .env 文件中的一个 env 变量,它包含正确的域,在本例中为 static.mysite.com

【讨论】:

以上是关于从不同的子域加载 Vue.js 异步组件的主要内容,如果未能解决你的问题,请参考以下文章

vue.js 表格分页ajax 异步加载数据

Javascript vue.js表格分页,ajax异步加载数据

Vue异步组件Demo

Vue.js前端框架系统学习(10)——动态组件 & 异步组件

编写Vue.js组件前需要知道的10件事

Vue按需加载提升用户体验