[{"data":1,"prerenderedAt":368},["ShallowReactive",2],{"$fen922M9aBBBGS7gEr37q12a4sAhxXmwCENBD1e0zskM":3,"\u002Fdocs\u002Fconcept\u002Fauto-imports":278,"\u002Fdocs\u002Fconcept\u002Fauto-imports-surround":363},[4,22,99,167,189,267],{"title":5,"titleTemplate":6,"icon":7,"redirect":8,"path":9,"stem":10,"children":11,"page":21},"起步指南",null,"i-lucide:rocket","\u002Fdocs\u002Fguide\u002Fintroduction","\u002Fdocs\u002Fguide","docs\u002F1.guide",[12,16],{"title":13,"path":8,"stem":14,"titleTemplate":6,"icon":15},"介绍","docs\u002F1.guide\u002F01.introduction","i-lucide:bot",{"title":17,"path":18,"stem":19,"titleTemplate":6,"icon":20},"安装","\u002Fdocs\u002Fguide\u002Finstallation","docs\u002F1.guide\u002F02.installation","i-lucide:download",false,{"title":23,"path":24,"stem":25,"children":26,"titleTemplate":6,"icon":29},"使用手册","\u002Fdocs\u002Fmanual","docs\u002F2.manual\u002F00.index",[27,30,35,40,57,78],{"title":23,"path":24,"stem":25,"titleTemplate":28,"icon":29},"%s | Oiyo","i-lucide:book-open-check",{"title":31,"path":32,"stem":33,"titleTemplate":6,"icon":34},"工程接入","\u002Fdocs\u002Fmanual\u002Fengineering","docs\u002F2.manual\u002F01.engineering","i-lucide:plug",{"title":36,"path":37,"stem":38,"titleTemplate":6,"icon":39},"配置系统","\u002Fdocs\u002Fmanual\u002Fconfiguration","docs\u002F2.manual\u002F02.configuration","i-lucide:sliders-horizontal",{"title":41,"titleTemplate":6,"defaultOpen":42,"icon":43,"path":44,"stem":45,"children":46,"page":21},"扫描导入",true,"i-lucide:scan-line","\u002Fdocs\u002Fmanual\u002Fscan","docs\u002F2.manual\u002F03.scan",[47,52],{"title":48,"path":49,"stem":50,"titleTemplate":6,"icon":51},"API 导入","\u002Fdocs\u002Fmanual\u002Fscan\u002Fapi","docs\u002F2.manual\u002F03.scan\u002F01.api","i-lucide:import",{"title":53,"path":54,"stem":55,"titleTemplate":6,"icon":56},"组件注册","\u002Fdocs\u002Fmanual\u002Fscan\u002Fcomponents","docs\u002F2.manual\u002F03.scan\u002F02.components","i-lucide:blocks",{"title":58,"titleTemplate":6,"defaultOpen":42,"icon":59,"path":60,"stem":61,"children":62,"page":21},"路由系统","i-lucide:map","\u002Fdocs\u002Fmanual\u002Fpage","docs\u002F2.manual\u002F04.page",[63,68,73],{"title":64,"path":65,"stem":66,"titleTemplate":6,"icon":67},"页面注册","\u002Fdocs\u002Fmanual\u002Fpage\u002Fregister","docs\u002F2.manual\u002F04.page\u002F01.register","i-lucide:file-box",{"title":69,"path":70,"stem":71,"titleTemplate":6,"icon":72},"页面元信息","\u002Fdocs\u002Fmanual\u002Fpage\u002Fmeta","docs\u002F2.manual\u002F04.page\u002F02.meta","i-lucide:file-cog",{"title":74,"path":75,"stem":76,"titleTemplate":6,"icon":77},"全局页面配置","\u002Fdocs\u002Fmanual\u002Fpage\u002Fconfig","docs\u002F2.manual\u002F04.page\u002F03.config","i-lucide:palette",{"title":79,"titleTemplate":6,"defaultOpen":42,"icon":80,"path":81,"stem":82,"children":83,"page":21},"视图结构","i-lucide:panels-top-left","\u002Fdocs\u002Fmanual\u002Fshell","docs\u002F2.manual\u002F05.shell",[84,89,94],{"title":85,"path":86,"stem":87,"titleTemplate":6,"icon":88},"应用骨架","\u002Fdocs\u002Fmanual\u002Fshell\u002Fapp-shell","docs\u002F2.manual\u002F05.shell\u002F01.app-shell","i-lucide:app-window",{"title":90,"path":91,"stem":92,"titleTemplate":6,"icon":93},"根上下文","\u002Fdocs\u002Fmanual\u002Fshell\u002Froot-context","docs\u002F2.manual\u002F05.shell\u002F02.root-context","i-lucide:network",{"title":95,"path":96,"stem":97,"titleTemplate":6,"icon":98},"布局系统","\u002Fdocs\u002Fmanual\u002Fshell\u002Flayout","docs\u002F2.manual\u002F05.shell\u002F03.layout","i-lucide:layout-template",{"title":100,"path":101,"stem":102,"children":103,"titleTemplate":6,"icon":166},"项目结构","\u002Fdocs\u002Fstructure","docs\u002F3.structure\u002F0.index",[104,106,111,152,156,161],{"title":100,"path":101,"stem":102,"titleTemplate":28,"icon":105},"i-lucide-layers",{"title":107,"path":108,"stem":109,"titleTemplate":6,"icon":110},".oiyo","\u002Fdocs\u002Fstructure\u002Foiyo","docs\u002F3.structure\u002F1.oiyo","i-catppuccin:folder-temp",{"title":112,"titleTemplate":6,"defaultOpen":42,"icon":113,"path":114,"stem":115,"children":116,"page":21},"src","i-catppuccin:folder-src","\u002Fdocs\u002Fstructure\u002Fsrc","docs\u002F3.structure\u002F1.src",[117,122,127,132,137,142,147],{"title":118,"path":119,"stem":120,"titleTemplate":6,"icon":121},"components","\u002Fdocs\u002Fstructure\u002Fsrc\u002Fcomponents","docs\u002F3.structure\u002F1.src\u002F1.components","i-catppuccin:folder-components",{"title":123,"path":124,"stem":125,"titleTemplate":6,"icon":126},"composables","\u002Fdocs\u002Fstructure\u002Fsrc\u002Fcomposables","docs\u002F3.structure\u002F1.src\u002F1.composables","i-catppuccin:folder-composables",{"title":128,"path":129,"stem":130,"titleTemplate":6,"icon":131},"layouts","\u002Fdocs\u002Fstructure\u002Fsrc\u002Flayouts","docs\u002F3.structure\u002F1.src\u002F1.layouts","i-catppuccin:folder-layouts",{"title":133,"path":134,"stem":135,"titleTemplate":6,"icon":136},"packages","\u002Fdocs\u002Fstructure\u002Fsrc\u002Fpackages","docs\u002F3.structure\u002F1.src\u002F1.packages","i-catppuccin:folder-packages",{"title":138,"path":139,"stem":140,"titleTemplate":6,"icon":141},"pages","\u002Fdocs\u002Fstructure\u002Fsrc\u002Fpages","docs\u002F3.structure\u002F1.src\u002F1.pages","i-catppuccin:folder-views",{"title":143,"path":144,"stem":145,"titleTemplate":6,"icon":146},"App.vue","\u002Fdocs\u002Fstructure\u002Fsrc\u002Fapp","docs\u002F3.structure\u002F1.src\u002F2.app","i-catppuccin:vue",{"title":148,"path":149,"stem":150,"titleTemplate":6,"icon":151},"pages.config.ts","\u002Fdocs\u002Fstructure\u002Fsrc\u002Fpages-config","docs\u002F3.structure\u002F1.src\u002F3.pages-config","i-catppuccin:typescript",{"title":153,"path":154,"stem":155,"titleTemplate":6,"icon":151},"oiyo.config.ts","\u002Fdocs\u002Fstructure\u002Foiyo-config","docs\u002F3.structure\u002F3.oiyo-config",{"title":157,"path":158,"stem":159,"titleTemplate":6,"icon":160},"package.json","\u002Fdocs\u002Fstructure\u002Fpackage","docs\u002F3.structure\u002F3.package","i-catppuccin:package-json",{"title":162,"path":163,"stem":164,"titleTemplate":6,"icon":165},"tsconfig.json","\u002Fdocs\u002Fstructure\u002Ftsconfig","docs\u002F3.structure\u002F3.tsconfig","i-catppuccin:typescript-config","i-lucide:layers",{"title":168,"titleTemplate":6,"icon":169,"redirect":170,"path":171,"stem":172,"children":173,"page":21},"核心概念","i-lucide:leaf","\u002Fdocs\u002Fconcept\u002Fapp","\u002Fdocs\u002Fconcept","docs\u002F4.concept",[174,178,182,185],{"title":175,"path":170,"stem":176,"titleTemplate":6,"icon":177},"根部视图","docs\u002F4.concept\u002F01.app","i-lucide:route",{"title":179,"path":180,"stem":181,"titleTemplate":6,"icon":59},"自动路由","\u002Fdocs\u002Fconcept\u002Froute","docs\u002F4.concept\u002F02.route",{"title":95,"path":183,"stem":184,"titleTemplate":6,"icon":98},"\u002Fdocs\u002Fconcept\u002Flayout","docs\u002F4.concept\u002F03.layout",{"title":186,"path":187,"stem":188,"titleTemplate":6,"icon":43},"自动导入","\u002Fdocs\u002Fconcept\u002Fauto-imports","docs\u002F4.concept\u002F04.auto-imports",{"title":190,"path":191,"stem":192,"children":193,"titleTemplate":6,"icon":266},"API","\u002Fdocs\u002Fapi","docs\u002F5.api\u002F00.index",[194,196,210,220,234,248],{"title":195,"path":191,"stem":192,"titleTemplate":28},"API 参考",{"title":197,"titleTemplate":6,"defaultOpen":42,"icon":198,"path":199,"stem":200,"children":201,"page":21},"配置","i-lucide:settings","\u002Fdocs\u002Fapi\u002Fconfig","docs\u002F5.api\u002F01.config",[202,206],{"title":203,"path":204,"stem":205,"titleTemplate":6},"defineOiyoConfig","\u002Fdocs\u002Fapi\u002Fconfig\u002Fdefine-oiyo-config","docs\u002F5.api\u002F01.config\u002F01.define-oiyo-config",{"title":207,"path":208,"stem":209,"titleTemplate":6},"definePagesConfig","\u002Fdocs\u002Fapi\u002Fconfig\u002Fdefine-pages-config","docs\u002F5.api\u002F01.config\u002F02.define-pages-config",{"title":211,"titleTemplate":6,"defaultOpen":42,"icon":212,"path":213,"stem":214,"children":215,"page":21},"运行时","i-lucide:shrub","\u002Fdocs\u002Fapi\u002Fruntime","docs\u002F5.api\u002F02.runtime",[216],{"title":217,"path":218,"stem":219,"titleTemplate":6},"Vue \u002F UniApp","\u002Fdocs\u002Fapi\u002Fruntime\u002Freference","docs\u002F5.api\u002F02.runtime\u002F01.reference",{"title":221,"titleTemplate":6,"defaultOpen":42,"icon":222,"path":223,"stem":224,"children":225,"page":21},"宏","i-lucide:wand","\u002Fdocs\u002Fapi\u002Fmacro","docs\u002F5.api\u002F04.macro",[226,230],{"title":227,"path":228,"stem":229,"titleTemplate":6},"defineRootContext","\u002Fdocs\u002Fapi\u002Fmacro\u002Fdefine-root-context","docs\u002F5.api\u002F04.macro\u002F01.define-root-context",{"title":231,"path":232,"stem":233,"titleTemplate":6},"definePageMeta","\u002Fdocs\u002Fapi\u002Fmacro\u002Fdefine-page-meta","docs\u002F5.api\u002F04.macro\u002F02.define-page-meta",{"title":235,"titleTemplate":6,"defaultOpen":42,"icon":236,"path":237,"stem":238,"children":239,"page":21},"组件","i-lucide:component","\u002Fdocs\u002Fapi\u002Fcomponents","docs\u002F5.api\u002F05.components",[240,244],{"title":241,"path":242,"stem":243,"titleTemplate":6},"\u003COiyoPage>","\u002Fdocs\u002Fapi\u002Fcomponents\u002Foiyo-page","docs\u002F5.api\u002F05.components\u002F01.oiyo-page",{"title":245,"path":246,"stem":247,"titleTemplate":6},"\u003COiyoLayout>","\u002Fdocs\u002Fapi\u002Fcomponents\u002Foiyo-layout","docs\u002F5.api\u002F05.components\u002F02.oiyo-layout",{"title":249,"titleTemplate":6,"defaultOpen":42,"icon":250,"path":251,"stem":252,"children":253,"page":21},"命令","i-lucide:command","\u002Fdocs\u002Fapi\u002Fcli","docs\u002F5.api\u002F06.cli",[254,258,262],{"title":255,"path":256,"stem":257,"titleTemplate":6},"oiyo prepare","\u002Fdocs\u002Fapi\u002Fcli\u002Foiyo-prepare","docs\u002F5.api\u002F06.cli\u002F00.oiyo-prepare",{"title":259,"path":260,"stem":261,"titleTemplate":6},"oiyo dev","\u002Fdocs\u002Fapi\u002Fcli\u002Foiyo-dev","docs\u002F5.api\u002F06.cli\u002F01.oiyo-dev",{"title":263,"path":264,"stem":265,"titleTemplate":6},"oiyo build","\u002Fdocs\u002Fapi\u002Fcli\u002Foiyo-build","docs\u002F5.api\u002F06.cli\u002F02.oiyo-build","i-lucide:braces",{"title":268,"titleTemplate":6,"icon":269,"redirect":270,"path":271,"stem":272,"children":273,"page":21},"沟通交流","i-lucide:message-circle-question","\u002Fdocs\u002Fcommunity\u002Fassist","\u002Fdocs\u002Fcommunity","docs\u002F9.community",[274],{"title":275,"path":270,"stem":276,"titleTemplate":6,"icon":277},"加群互助","docs\u002F9.community\u002F01.assist","i-lucide:scan-qr-code",{"id":279,"title":186,"body":280,"description":357,"extension":358,"meta":359,"navigation":360,"path":187,"seo":361,"stem":188,"titleTemplate":6,"__hash__":362},"docs\u002Fdocs\u002F4.concept\u002F04.auto-imports.md",{"type":281,"value":282,"toc":350},"minimark",[283,292,296,306,309,321,324,340,343],[284,285,286,287,291],"p",{},"在大型项目中，为了复用一段 UI 或是逻辑，开发者往往需要在多个页面中反复书写相似的 ",[288,289,290],"code",{},"import"," 语句。Oiyo 提供“自动扫描导入”的机制，让你能将注意力集中在业务本身的组装上。",[293,294,295],"h2",{"id":295},"什么是自动扫描",[284,297,298,299,301,302,305],{},"自动扫描（Auto Scan）指的是 Oiyo 会根据工程配置（",[288,300,153],{}," 中的 ",[288,303,304],{},"scan"," 字段）从特定来源搜集信息。并将这些信息按需“注入”到运行时的上下文中，使得使用时无需手动引入。",[293,307,308],{"id":308},"约定边界与团队选择",[284,310,311,312,314,315,317,318,320],{},"Oiyo 的默认策略虽然开启了自动扫描（预设了 ",[288,313,118],{}," 和 ",[288,316,123],{},"），但并没有“强制”阻止你显式编写 ",[288,319,290],{},"。",[284,322,323],{},"这就意味着，如果你的团队偏爱“显式的依赖追踪”：",[325,326,327,334],"ul",{},[328,329,330,331,333],"li",{},"你完全可以无视自动扫描，继续手写 ",[288,332,290],{}," 语句。",[328,335,336,337,339],{},"只要是通过 ",[288,338,290],{}," 引入的依赖，编译插件会优先尊重并跳过该变量的自动注入，不会产生冲突。",[293,341,342],{"id":342},"延伸阅读",[344,345,347],"callout",{"color":346,"icon":198,"to":204},"neutral",[284,348,349],{},"如何在配置中增加自定义的扫描来源",{"title":351,"searchDepth":352,"depth":352,"links":353},"",2,[354,355,356],{"id":295,"depth":352,"text":295},{"id":308,"depth":352,"text":308},{"id":342,"depth":352,"text":342},"自动收集并注入组件、API 及全局类型声明","md",{},{"icon":43},{"title":186,"description":357},"bjTHzrIASnTwS6gt3Cs9YmV8UU6jzrwcrA1ufvKjUk0",[364,366],{"title":95,"path":183,"stem":184,"description":365,"icon":98,"children":-1},"使用布局统一页面骨架",{"title":195,"path":191,"stem":192,"description":367,"children":-1},"Oiyo 配置、运行时、宏、组件与 CLI 的权威参考",1780823237710]