ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

how to use vanilla js iterate the Symbol Object All In One

2022-09-02 03:00:38  阅读:229  来源: 互联网

标签:use iterator vanilla Object component let app Symbol UIComponents


how to use vanilla js iterate the Symbol Object All In One

bug ❌

Uncaught TypeError: UIComponents is not iterable


import * as UIComponents from './index'

console.log(`UIComponents =`, UIComponents);
// UIComponents = Module {Symbol(Symbol.toStringTag): 'Module'}

export const UIComponentsInstall = {
  // 钩子函数
  install: (app: App) => {
    // Uncaught TypeError: UIComponents is not iterable ❌
    for (const component of UIComponents) {
      // 把组件挂载到 Vue 上
      app.component(component.name, component);
    }
  }
}

solution ✅

lodash-es

$ yarn add -D lodash-es @types/lodash-es

loadsh forEach

import * as UIComponents from './index'


export const UIComponentsInstall = {
  // 钩子函数
  install: (app: App) => {
    forEach(UIComponents, (component) => {
      // 把组件挂载到 Vue 上
      app.component(component.name, component);
    })
  }
}

???

let str = "Hello";

// does the same as
// for (let char of str) alert(char);

let iterator = str[Symbol.iterator]();

while (true) {
  let result = iterator.next();
  if (result.done) break;
  alert(result.value); // outputs characters one by one
}

https://javascript.info/iterable

https://www.youtube.com/watch?v=CM_oBrnB4Vk&ab_channel=codebubb

https://www.youtube.com/watch?v=2oU-DfdWM0c&ab_channel=dcode

refs

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Symbol/iterator



©xgqfrms 2012-2020

www.cnblogs.com/xgqfrms 发布文章使用:只允许注册用户才可以访问!

原创文章,版权所有©️xgqfrms, 禁止转载

标签:use,iterator,vanilla,Object,component,let,app,Symbol,UIComponents
来源: https://www.cnblogs.com/xgqfrms/p/16648418.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有