index.js 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. // eslint-disable-next-line no-undef
  2. __webpack_nonce__ = '*NONCE_TOKEN*';
  3. import * as components from './components';
  4. import langZhCn from './i18n/zh-CN.js';
  5. import langEnUs from './i18n/en-US.js';
  6. export * from './components';
  7. export const install = function (app) {
  8. console.log('start install pc-component-v3.');
  9. app.mixin({
  10. beforeCreate() {
  11. var _self = this;
  12. // 判断是否为根节点,合并国际化信息
  13. if (this.$root === this && this.$i18n) {
  14. console.log('merge pc-component-v3 i18n.');
  15. _self.$i18n.mergeLocaleMessage('zh-CN', langZhCn);
  16. _self.$i18n.mergeLocaleMessage('en-US', langEnUs);
  17. }
  18. },
  19. });
  20. Object.keys(components).forEach(key => {
  21. const component = components[key];
  22. if (component.install) {
  23. console.log('install pc-component-v3 component: ' + component.name);
  24. app.use(component);
  25. }
  26. });
  27. console.log('pc-component-v3 install finished.');
  28. return app;
  29. };
  30. // const install = function (app, opts = {}) {
  31. // console.log('start install.');
  32. // /* istanbul ignore if */
  33. // // if (install.installed){
  34. // // console.log('pc-component-v3 already installed.');
  35. // // return;
  36. // // }
  37. // // Vue.use(VueI18n);
  38. // app.mixin({
  39. // beforeCreate() {
  40. // var _self = this;
  41. // // 这里为了防止 beforeCreate 比 vue-i18n 的 beforeCreate 先执行导致 this.$i18n 为空
  42. // this.$nextTick(() => {
  43. // // 判断是否为根节点,合并国际化信息
  44. // if (this.$root === this && this.$i18n) {
  45. // //if (this.$i18n) {
  46. // console.log('merge pc-component-v3 i18n.');
  47. // _self.$i18n.mergeLocaleMessage('zh-CN', langZhCn);
  48. // _self.$i18n.mergeLocaleMessage('en-US', langEnUs);
  49. // }
  50. // });
  51. // },
  52. // });
  53. // components.map(component => {
  54. // console.log('install component: ' + component.name);
  55. // app.component(component.name, component);
  56. // });
  57. // install.installed = true;
  58. // console.log('install finished.');
  59. // };
  60. let version = '1.0.28';
  61. export {
  62. version,
  63. };
  64. export default {
  65. install,
  66. version,
  67. };