Vue中怎么异步加载about组件
短信预约 -IT技能 免费直播动态提醒
Vue中怎么异步加载about组件,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
异步加载about组件
about.js
Vue.component('about', {template: '<div>ABOUT PAGE</div>'});
html代码:
<div id="app">
<router-link to="/home">/home</router-link>
<router-link to="/about">/about</router-link>
<router-view></router-view>
</div>
<script class="lazy" data-src="static/js/vue.min.js"></script>
<script class="lazy" data-src="static/js/vue-router.js"></script>
<script>
function load (componentName, path) {
return new Promise(function (resolve, reject){
var script = document.createElement('script');
script.class="lazy" data-src = path;
script.async = true;
script.onload = function () {
var component = Vue.component(componentName);
if (component) {
resolve(component);
} else {
reject();
}
}
document.body.appendChild(script);
});
}
var router = new VueRouter({
routes: [{
path: '/',
redirect: '/home'
}, {
path: '/home',
component: {
template: '<div>HOME PAGE</div>'
}
},{
path: '/about',
component: function (resolve, reject) {
load('about', 'static/js/business/about.js').then(resolve, reject);
}
}]
});
var app = new Vue({
el: '#app',
router: router
});
</script>
关于Vue中怎么异步加载about组件问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注编程网行业资讯频道了解更多相关知识。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341