【小程序】使用uni-app搭建小程序环境---基础组件的自动化全局注册 ******
功能: 想实现自动化全局注册组件
const componentsContext = require.context('./components', true, /Base[A-Z]\w+\.(vue|js)$/); console.log('????',componentsContext,componentsContext.keys()); componentsContext.keys().forEach(component => { // 获取文件中的 default 模块 const componentConfig = componentsContext(component).default; console.log(componentsContext(component).default); Vue.component(componentConfig.name, componentConfig) })
报错:
结果:未解决
原因:为了编译至各平台,编译器是静态分析代码,扫描组件来编译,所以不支持动态注册,短期内应该不会支持动态组件注册
全局组件
uni-app
支持配置全局组件,需在 main.js
里进行全局注册,注册后就可在所有页面里使用该组件。
注意
Vue.component
的第一个参数必须是静态的字符串。- nvue页面暂不支持全局组件
示例
main.js 里进行全局导入和注册
import Vue from 'vue' import pageHead from './components/page-head.vue' Vue.component('page-head',pageHead)
index.vue 里可直接使用组件
<template> <view> <page-head></page-head> </view> </template>
相关资料:
作者:smile.轉角
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.
欢迎关注我,一起进步!扫描下方二维码即可加我QQ