1. 程式人生 > >jquery加載單文件vue組件

jquery加載單文件vue組件

gif -h json enter bsp register replace align console

/**註冊組件 */
    function registerComponent(name){
        dm[name] = {};
        Vue.component(name + ‘-component‘, function(resolve, reject){
            $.get(‘./modules/‘ + name + ‘.vue‘).then(function(rv){
                var temp = rv.match(/<template[^>]*>([\s\S]*?)<\/template>/)[1].replace(/(^\s+)|\n/g, ‘‘),
                    script 
= rv.match(/<script[^>]*>([\s\S]*?)<\/script>/)[1].replace(/(^\s+)|\n/g, ‘‘); script = (new Function(‘return ‘ + script))(); script.template = temp; script.props || (script.props=["param"]); script.data || (script.data=function
(){ return JSON.parse(JSON.stringify(this.param))}); resolve(script); }).catch(function(err){ console.error(err); resolve({ template: ‘<div style="text-align:center; line-height:5em;">NOT FOUND</div>‘ }); }); }); }

jquery加載單文件vue組件