模板模式
在写一个react组件或是vue组件的时候,我们写一个组件的格式是固定的,是不是很像是在写一个配置文件,我们可以看一下react早期的组件代码和vue的组件代码。
react
React.createClass({
displayName: 'demo',
render: function () {
return (
<div></div>
)
}
})
vue
Vue.extend({
name: 'demo',
template: '<div></div>',
data: function () {
return {
}
}
})
我们自己创建一个简单的模板
window.onload = function(){
/*
@author jcxu
@description 创建一个组件模板
*/
var jcxu = function(config) {
var el = config.el || '#app';
// 先找到组件挂载点
var getEl = function() {
console.log('挂载点为'+el);
};
var step1 = config.step1 || function () {
throw new Error('必须重写step1f方法');
return false;
}
var step2 = config.step2 || function () {
throw new Error('必须重写step2方法');
return false;
}
var F = function() {};
F.prototype.init = function() {
// 按照顺序执行相应的方法
getEl();
step1();
step2();
};
return F;
}
var demo = jcxu({
el: '.app',
step1: function() {
console.log('此方法已被重写');
}
});
var demo1 = new demo();
demo1.init();
}
最后更新于