比如登录注册这种弹窗,可能很多页面都会用到。
是把代码放在js里面吗
webpack分包可以异步加载
let btn = document.querySelector('.btn');
let pluginFoo = false;
btn.addEventListener('click', function() {
require.ensure([], function(require) {
let Foo = require('./bundles/plugin.js');//点击时加载
if (!pluginFoo) { //避免重复加载
pluginFoo = new Foo('异步加载成功');
} else {
return;
}
pluginFoo.show(); //调用
}, 'plugin');
});
可以看控制台Network里,一开始plugin.js是没有的,点击后才加载进来
这一类重用度比较高的组件,当然封装成一个独立的组件或者类比较合适。
首先,肯定是在 js 里面做封装。 如果是两三年前,一般是采用模板库 + jquery 这一套实现;现在有了 react/vue 这种视图组件,顺其自然就得到了封装。
我比较土鳖的人,所以题主看一个方案:
// main.js
$('.J-Login').click(function() {
var loginHtml = '<input><input><button>';
// show html
return false;
});
11 回答1.3k 阅读
1 回答862 阅读✓ 已解决
1 回答1.1k 阅读
1 回答803 阅读✓ 已解决
2 回答780 阅读
2 回答622 阅读
2 回答610 阅读
模块化/组件化开发
赶紧加入 Vue.js 的大本营吧(怎么感觉跟打广告似的)!