diff --git "a/data/1.web\345\210\235\351\230\266/1.\345\211\215\347\253\257\345\237\272\347\241\200/1.\345\256\242\346\210\267\347\253\257/config.json" "b/data/1.web\345\210\235\351\230\266/1.\345\211\215\347\253\257\345\237\272\347\241\200/1.\345\256\242\346\210\267\347\253\257/config.json" index 549cd8e3d896b05d1930af7f5d59e640ad8460ec..50e622ad9131d3babf317a5db4d0f1bc7d76b9ac 100644 --- "a/data/1.web\345\210\235\351\230\266/1.\345\211\215\347\253\257\345\237\272\347\241\200/1.\345\256\242\346\210\267\347\253\257/config.json" +++ "b/data/1.web\345\210\235\351\230\266/1.\345\211\215\347\253\257\345\237\272\347\241\200/1.\345\256\242\346\210\267\347\253\257/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-d33df0e104da499ca1c3a25f24466544", "keywords": [], "children": [ { @@ -9,22 +9,34 @@ { "Chrome": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ac6b6e2886ea484ca9fd3945e21d279f" } }, { "Safari": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6a34066088124a6c864c0ce61428758e" } }, { "Firefox": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b9139f8077c849258beaeb158ca54098" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-896727b514f64d33b519917492c64541" } }, { @@ -34,18 +46,29 @@ { "小程序": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2ea24cfdeef64061ba556a264f151331" } }, { "WebView": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-af19f497310b4ba4b5110a6dc07f1960" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-54ddb35d9c724041bd512b4c2ddb2585" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/1.\345\211\215\347\253\257\345\237\272\347\241\200/2.\347\275\221\347\273\234/config.json" "b/data/1.web\345\210\235\351\230\266/1.\345\211\215\347\253\257\345\237\272\347\241\200/2.\347\275\221\347\273\234/config.json" index 9d70dfe089dd724d393fec4de6b2bb86528d627a..099a6a55d694de2962ad41caaaf40b6c701fd392 100644 --- "a/data/1.web\345\210\235\351\230\266/1.\345\211\215\347\253\257\345\237\272\347\241\200/2.\347\275\221\347\273\234/config.json" +++ "b/data/1.web\345\210\235\351\230\266/1.\345\211\215\347\253\257\345\237\272\347\241\200/2.\347\275\221\347\273\234/config.json" @@ -1,31 +1,45 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-2c0c4d8e710e4ace805bb7dbe676dda6", "keywords": [], "children": [ { "Domain": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-74d9f685c720489da94d95be5e9a624e" } }, { "TCP/IP": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d8afdf4f502a4e968125c727b8c1dd24" } }, { "DNS": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0e865026a58b4f7593670e3a11338e4d" } }, { "HTTP": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6117d9a5edc2492492c7a71437afd85e" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/1.\345\211\215\347\253\257\345\237\272\347\241\200/3.\346\234\215\345\212\241\347\253\257/config.json" "b/data/1.web\345\210\235\351\230\266/1.\345\211\215\347\253\257\345\237\272\347\241\200/3.\346\234\215\345\212\241\347\253\257/config.json" index 82e651baaaaa7ab50c3be0db6dda042a576db686..aafd3d72f7421ddee41405b3dc5d532179a1b76a 100644 --- "a/data/1.web\345\210\235\351\230\266/1.\345\211\215\347\253\257\345\237\272\347\241\200/3.\346\234\215\345\212\241\347\253\257/config.json" +++ "b/data/1.web\345\210\235\351\230\266/1.\345\211\215\347\253\257\345\237\272\347\241\200/3.\346\234\215\345\212\241\347\253\257/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-25c610dccf844cf0b49d9975ac8d4b8f", "keywords": [], "children": [ { @@ -9,22 +9,34 @@ { "Nginx": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-227350c6228840e69322747462f22b43" } }, { "Apache HTTP Server": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-96387ad55afb4767be0db5d8f630f019" } }, { "CDN": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aaaae5618ea9496d80d7feae8ff60634" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2323005e550d4c4192c1b16efc935522" } }, { @@ -34,36 +46,56 @@ { "PHP": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b875257e4593475a8715ed8ad15b8c73" } }, { "Java": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bbd2d09339704b7d8d4bc0c4e8933f23" } }, { "Golang": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-95e0b95856e0477292c6d4c0680e7bde" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2da0ef2c998d4cc899f12a3072054c8d" } }, { "数据库": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-166221d18cc24074833679af8b66188f" } }, { "操作系统": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e7183371e7b74336a6f88ed91ed0bb49" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/1.\345\211\215\347\253\257\345\237\272\347\241\200/4.\350\241\214\344\270\232\346\240\207\345\207\206/config.json" "b/data/1.web\345\210\235\351\230\266/1.\345\211\215\347\253\257\345\237\272\347\241\200/4.\350\241\214\344\270\232\346\240\207\345\207\206/config.json" index 8bce452742296a3ff62504be521f4fea389adec3..6549fdfd5ed83a0e389b63edf4b3db5d5de39be4 100644 --- "a/data/1.web\345\210\235\351\230\266/1.\345\211\215\347\253\257\345\237\272\347\241\200/4.\350\241\214\344\270\232\346\240\207\345\207\206/config.json" +++ "b/data/1.web\345\210\235\351\230\266/1.\345\211\215\347\253\257\345\237\272\347\241\200/4.\350\241\214\344\270\232\346\240\207\345\207\206/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-5b0389d59a46415192d47f562f1d4efa", "keywords": [], "children": [ { @@ -9,36 +9,56 @@ { "CSS标准": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9bd8b2393fab4521a4db327f7ed16ea2" } }, { "HTML、XHTML、XML、HTML5标准": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c55a7a3aa6e64e5184c065d571c064d1" } }, { "DOM标准": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-941af4940c7740238d46ab3a923aa227" } }, { "SVG标准": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8d4eb1564bfe477592550fdc255e94b7" } }, { "小程序标准": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-021e66da25e34937a0dc3b31de741733" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1328712051f14901b32a8275157c72ec" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/1.\345\211\215\347\253\257\345\237\272\347\241\200/5.ECMA-TC39/config.json" "b/data/1.web\345\210\235\351\230\266/1.\345\211\215\347\253\257\345\237\272\347\241\200/5.ECMA-TC39/config.json" index 2333e69d4c39732dca18506eba3fe07358e7fc3c..f327c9a4213b2d1dfdbf381232e7d4d16efb3d0c 100644 --- "a/data/1.web\345\210\235\351\230\266/1.\345\211\215\347\253\257\345\237\272\347\241\200/5.ECMA-TC39/config.json" +++ "b/data/1.web\345\210\235\351\230\266/1.\345\211\215\347\253\257\345\237\272\347\241\200/5.ECMA-TC39/config.json" @@ -1,19 +1,27 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-fed98fe2ab2841a3a2d136d417d1bd90", "keywords": [], "children": [ { "EcmaScript标准": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ae209ee870564348b547b9f539023626" } }, { "JavaScript标准": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4b73c6114bdf40eda5571448442e2e9b" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/1.\345\211\215\347\253\257\345\237\272\347\241\200/config.json" "b/data/1.web\345\210\235\351\230\266/1.\345\211\215\347\253\257\345\237\272\347\241\200/config.json" index 3407cf95a3919655576413ce3c70fe407e0719d7..25122be9d6d19cc53a8b874dd43ddd53eff4140c 100644 --- "a/data/1.web\345\210\235\351\230\266/1.\345\211\215\347\253\257\345\237\272\347\241\200/config.json" +++ "b/data/1.web\345\210\235\351\230\266/1.\345\211\215\347\253\257\345\237\272\347\241\200/config.json" @@ -1,4 +1,6 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [] + "node_id": "web-c4ea38687111444f9a10cadd5a1cd70c", + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/2.\347\240\224\345\217\221\345\267\245\345\205\267/1.\347\274\226\350\276\221\345\231\250/config.json" "b/data/1.web\345\210\235\351\230\266/2.\347\240\224\345\217\221\345\267\245\345\205\267/1.\347\274\226\350\276\221\345\231\250/config.json" index 9f3715a8e19b2c4198a019ed11e48c16407815b4..88d76a0d69a21a008145abb13297112eb5ce93d0 100644 --- "a/data/1.web\345\210\235\351\230\266/2.\347\240\224\345\217\221\345\267\245\345\205\267/1.\347\274\226\350\276\221\345\231\250/config.json" +++ "b/data/1.web\345\210\235\351\230\266/2.\347\240\224\345\217\221\345\267\245\345\205\267/1.\347\274\226\350\276\221\345\231\250/config.json" @@ -1,25 +1,36 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-936888e567b844ba9117213fdd25b340", "keywords": [], "children": [ { "Sublime Text": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-501d8f94a7b042ae8186e53012a22ea5" } }, { "Visual Studio Code": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5f09304fee2b48f399735f9f8ed4f2a2" } }, { "WebStorm": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-99ccddbaf8f549f780468884f9a22bae" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/2.\347\240\224\345\217\221\345\267\245\345\205\267/2.\350\260\203\350\257\225\351\242\204\350\247\210/config.json" "b/data/1.web\345\210\235\351\230\266/2.\347\240\224\345\217\221\345\267\245\345\205\267/2.\350\260\203\350\257\225\351\242\204\350\247\210/config.json" index 66d05e6de26cb9d4dc4e127b13e5cb4e1e72ea10..396389e185b8542231d5e6f9fe860f69cf68c7dd 100644 --- "a/data/1.web\345\210\235\351\230\266/2.\347\240\224\345\217\221\345\267\245\345\205\267/2.\350\260\203\350\257\225\351\242\204\350\247\210/config.json" +++ "b/data/1.web\345\210\235\351\230\266/2.\347\240\224\345\217\221\345\267\245\345\205\267/2.\350\260\203\350\257\225\351\242\204\350\247\210/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-75c71a1c8dd14ce8a177fff59ea1eed9", "keywords": [], "children": [ { @@ -9,16 +9,25 @@ { "FireBug": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dfe421b5d5e24fe884114967c4a61c7b" } }, { "Chrome DevTools": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f8247861127c4e1aa001e07fb21ac9f9" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-39bf429ba03f4710b0a41e438018f1c9" } }, { @@ -28,16 +37,25 @@ { "file://": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-10f9080ac7b94030bf8e945fda0d760a" } }, { "http://、SimpleHTTPServer": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-08e4c364d85e4aaa843bfc43937dcf46" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3b8c1e263f44446598eb188758e2653b" } }, { @@ -47,16 +65,25 @@ { "CodePen": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-52a68da3fad44a55baa5acb9a1b0e753" } }, { "JSFiddle": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-20576e173afc4efda9469e36229b4b1f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-82c2783e722d4aee8ab4c14d2971a5ac" } }, { @@ -66,18 +93,29 @@ { "hosts、Switchhosts": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a8fc58f0f4d449a998a9afddac3e3f27" } }, { "Debugging Proxy、Charles、wireshark": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2a9e90ee07714ab4891aba82c0924a8d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-014cadc6dd02429a85b2371545ff38ee" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/2.\347\240\224\345\217\221\345\267\245\345\205\267/3.\345\233\276\347\211\207\347\274\226\350\276\221\345\231\250/config.json" "b/data/1.web\345\210\235\351\230\266/2.\347\240\224\345\217\221\345\267\245\345\205\267/3.\345\233\276\347\211\207\347\274\226\350\276\221\345\231\250/config.json" index a481e20f906ac436d4358589de49289ab7557f3b..a0f737aa804c78b1a1bf92df9c385ebc0f11f157 100644 --- "a/data/1.web\345\210\235\351\230\266/2.\347\240\224\345\217\221\345\267\245\345\205\267/3.\345\233\276\347\211\207\347\274\226\350\276\221\345\231\250/config.json" +++ "b/data/1.web\345\210\235\351\230\266/2.\347\240\224\345\217\221\345\267\245\345\205\267/3.\345\233\276\347\211\207\347\274\226\350\276\221\345\231\250/config.json" @@ -1,19 +1,27 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-e072057b2394455d9da9c692c119dd25", "keywords": [], "children": [ { "Photoshop": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-55767c5888f54f838b0340731cfc1102" } }, { "Sketch": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f44f091dbba14733a11da8293b992359" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/2.\347\240\224\345\217\221\345\267\245\345\205\267/4.\347\211\210\346\234\254\347\256\241\347\220\206/config.json" "b/data/1.web\345\210\235\351\230\266/2.\347\240\224\345\217\221\345\267\245\345\205\267/4.\347\211\210\346\234\254\347\256\241\347\220\206/config.json" index c2270dd5d5b890dad47eb5bf7ee3475a7f1f336e..4aa1f71a085717c07a5730c83a25478981906d4a 100644 --- "a/data/1.web\345\210\235\351\230\266/2.\347\240\224\345\217\221\345\267\245\345\205\267/4.\347\211\210\346\234\254\347\256\241\347\220\206/config.json" +++ "b/data/1.web\345\210\235\351\230\266/2.\347\240\224\345\217\221\345\267\245\345\205\267/4.\347\211\210\346\234\254\347\256\241\347\220\206/config.json" @@ -1,19 +1,27 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-dbf89765970b4c26a5d4a3ea2f7a3cb4", "keywords": [], "children": [ { "Git": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-af9fe26f7c6e4698aea2a5d5755cac10" } }, { "SVN": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9605f43f1a694388b942bbe840dacaee" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/2.\347\240\224\345\217\221\345\267\245\345\205\267/config.json" "b/data/1.web\345\210\235\351\230\266/2.\347\240\224\345\217\221\345\267\245\345\205\267/config.json" index 3407cf95a3919655576413ce3c70fe407e0719d7..a6283b370b2a7dfe3c7ac47a52540396bca80948 100644 --- "a/data/1.web\345\210\235\351\230\266/2.\347\240\224\345\217\221\345\267\245\345\205\267/config.json" +++ "b/data/1.web\345\210\235\351\230\266/2.\347\240\224\345\217\221\345\267\245\345\205\267/config.json" @@ -1,4 +1,6 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [] + "node_id": "web-8dc4e918e1854de1a7950a50a5facaec", + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/3.HTML/1.\345\205\203\347\264\240/config.json" "b/data/1.web\345\210\235\351\230\266/3.HTML/1.\345\205\203\347\264\240/config.json" index 3800e7be2fdcbbf91fbcdccb50c699e8fe741052..df3155bff9f4b652d7050d8804871b1c7d36c108 100644 --- "a/data/1.web\345\210\235\351\230\266/3.HTML/1.\345\205\203\347\264\240/config.json" +++ "b/data/1.web\345\210\235\351\230\266/3.HTML/1.\345\205\203\347\264\240/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-f9f2ae5719e34d9ea81ff594850b45b9", "keywords": [], "children": [ { @@ -9,16 +9,25 @@ { "主根元素 html": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8bd05eac64314959a7c14533b5fe547c" } }, { "分区根元素 body": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4153167e47ff402dabfe5b5d78e731e2" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3d5d44a3f2d6454db48740d844825f82" } }, { @@ -28,10 +37,16 @@ { "base、head": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ab3004023c7548d1aeb446467d5fe939" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1afea93823734bb58a0f62002086eff7" } }, { @@ -41,10 +56,16 @@ { "header、footer": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b5c1bd96c7b144fe985e73fca7f9f8ce" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-12195e922a6d4759a7ca2cdd2c7ec8de" } }, { @@ -54,16 +75,25 @@ { "块级内容 div、dir": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c5e5eb0367b241a2af3ce8ae92fff311" } }, { "文字内容 a、b、strong": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a6c348e8acca43aa9c520bb26c9b497e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-78d9f250300a4213bd70f5f3e9cb10b7" } }, { @@ -73,10 +103,16 @@ { "audio、img": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3aec275fed2443778363ddac8cc1891d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e3db8ce927d74afbaebfee5f6d0fb987" } }, { @@ -86,10 +122,16 @@ { "iframe、object": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d2a639306dc44bbb9feaf3983141c615" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-df18e683c2724d4fb9b6f6ca2b2d5f13" } }, { @@ -99,10 +141,16 @@ { "canvas、script": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-90e9e062d04b4f6990473d97d13e5c80" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8b208c2d307d472c86468948f2b6ac52" } }, { @@ -112,10 +160,16 @@ { "table、tbody": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-be9ea69069174e32b0aeae215ddc2254" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e361fab1860c451eae62458dfd0c2533" } }, { @@ -125,10 +179,16 @@ { "button、input": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-73507fcf2b674541942d9a7a4c761c78" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0712fd64d84e4c27b85a990e195150f7" } }, { @@ -138,12 +198,20 @@ { "menu、menuitem": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-69cda35ef05f40e8b5d25e5e79185591" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6a2577914c924a829887a91862be7e13" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/3.HTML/2.\345\261\236\346\200\247/config.json" "b/data/1.web\345\210\235\351\230\266/3.HTML/2.\345\261\236\346\200\247/config.json" index 99090e2835b4f26c1e3df469ca5d83e5d6149655..103f5118ab9fc07dcb7d1fbb45148bc4e0148800 100644 --- "a/data/1.web\345\210\235\351\230\266/3.HTML/2.\345\261\236\346\200\247/config.json" +++ "b/data/1.web\345\210\235\351\230\266/3.HTML/2.\345\261\236\346\200\247/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-0fbbbea5415a4887a41344d4b6d8ca29", "keywords": [], "children": [ { @@ -9,18 +9,29 @@ { "class、id、style、title": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2cab2bf71e844163adb93ba231cb681c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bcd199e3dc8d4ba19b2a792c83ba36ce" } }, { "全局属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-946e1bcdd1ad4bdc92bc321d51775554" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/3.HTML/3.\344\272\213\344\273\266/config.json" "b/data/1.web\345\210\235\351\230\266/3.HTML/3.\344\272\213\344\273\266/config.json" index 0d56f5c5d2e5e01d66fb9c05a0752e59b53eb8e1..c9bf1ef956cef0f9c4da60ff1c43e9aeb91ea345 100644 --- "a/data/1.web\345\210\235\351\230\266/3.HTML/3.\344\272\213\344\273\266/config.json" +++ "b/data/1.web\345\210\235\351\230\266/3.HTML/3.\344\272\213\344\273\266/config.json" @@ -1,37 +1,54 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-805f4dfc7a1d48ee86b5653dc8d4a585", "keywords": [], "children": [ { "窗口事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9473909b768f42549d05ffeed539273e" } }, { "表单事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-618c2c391d454d6ea74e989b33a4434a" } }, { "键盘事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-354e9c6102c946eb91d42f4054a73bfe" } }, { "鼠标事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-da8ea4859d17459b896de0bb23818a60" } }, { "多媒体事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ba0e237e6cf647ea80b07252687f382f" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/3.HTML/4.\347\274\226\347\240\201/config.json" "b/data/1.web\345\210\235\351\230\266/3.HTML/4.\347\274\226\347\240\201/config.json" index ebbb276e302251ed4fc9fa2376d547ed3c3f000f..e6c50a20cb3966b73d33a04aabe1a34428d6e89b 100644 --- "a/data/1.web\345\210\235\351\230\266/3.HTML/4.\347\274\226\347\240\201/config.json" +++ "b/data/1.web\345\210\235\351\230\266/3.HTML/4.\347\274\226\347\240\201/config.json" @@ -1,25 +1,36 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-ae8b4943b5bf4c8b883819459b6db45c", "keywords": [], "children": [ { "URL编码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-323251adad61495482461b4837ab9ee2" } }, { "语言代码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-99c0e177702147c4be7edabf0f46158e" } }, { "字符集": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-803688da5b454f5eae498565bdf5122f" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/3.HTML/config.json" "b/data/1.web\345\210\235\351\230\266/3.HTML/config.json" index 3407cf95a3919655576413ce3c70fe407e0719d7..e705f203b2f62842948e6e52291e1279f93350c5 100644 --- "a/data/1.web\345\210\235\351\230\266/3.HTML/config.json" +++ "b/data/1.web\345\210\235\351\230\266/3.HTML/config.json" @@ -1,4 +1,6 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [] + "node_id": "web-104d34637c9c4da4981789eaf9dd79b9", + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/4.CSS/1.\350\257\255\346\263\225/config.json" "b/data/1.web\345\210\235\351\230\266/4.CSS/1.\350\257\255\346\263\225/config.json" index b03888801c1b42c4a6143c116c3cc5d289c198ae..9dd9b0562fe9b2eac95bba9391dc6534079efa54 100644 --- "a/data/1.web\345\210\235\351\230\266/4.CSS/1.\350\257\255\346\263\225/config.json" +++ "b/data/1.web\345\210\235\351\230\266/4.CSS/1.\350\257\255\346\263\225/config.json" @@ -1,61 +1,90 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-84625f354fa94ec08bbe951df71e0ea2", "keywords": [], "children": [ { "@规则": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d28dd853aed9491c812e15cf676eb29d" } }, { "层叠": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-925233a0b4754bc7a7103980c23a413b" } }, { "注释": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9e99f1f6578644a2941155ba24311199" } }, { "解释器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-81fd632915c64a5da8992d3c83cb4537" } }, { "继承": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4b7e1dbda2db43d3b116dcdd889e591a" } }, { "简写": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-718152e099e04b749ba685aebcc82b63" } }, { "优先级": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4f57fe98421642d48bc0953cecbe18e4" } }, { "值定义": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a3d8a6db05424c57a4a981be8cb18d44" } }, { "单位与取值类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-be6eb10daebd47a29d9c4db9cd75c68d" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/4.CSS/2.\351\200\211\346\213\251\345\231\250/config.json" "b/data/1.web\345\210\235\351\230\266/4.CSS/2.\351\200\211\346\213\251\345\231\250/config.json" index ed9e980457aac1a5ef35b6f9b5e05e8667404311..3fc1d3ea4f2116e538f6e1fa1467a32516f4c396 100644 --- "a/data/1.web\345\210\235\351\230\266/4.CSS/2.\351\200\211\346\213\251\345\231\250/config.json" +++ "b/data/1.web\345\210\235\351\230\266/4.CSS/2.\351\200\211\346\213\251\345\231\250/config.json" @@ -1,67 +1,99 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-e0da7710f54d4cecb7b25aca00fa8b5d", "keywords": [], "children": [ { "元素选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d25f3975e58344d08a7db39642d52f03" } }, { "选择器分组": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-83727ee443404e79b57e56fc61e2259f" } }, { "类选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-62f3f24fd537433f8ffcf460268ccd97" } }, { "ID 选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cc58ded2f1ea43228720251ea842f7f4" } }, { "属性选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-92bf57bfd03b493b8373bb35b9d8bf03" } }, { "后代选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-608b47df16674c88b55e6e390cf41735" } }, { "子元素选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d565667730344f17b34157990428a863" } }, { "相邻选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e4a338e7bef84d42bb66519cb8588d12" } }, { "伪类": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-de22e845a413445eaa5b230a4aab4cab" } }, { "伪元素": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1c2981f167d846f8bb488cb63fbdcbe3" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/4.CSS/3.\345\256\232\344\275\215/config.json" "b/data/1.web\345\210\235\351\230\266/4.CSS/3.\345\256\232\344\275\215/config.json" index 7ab939e548c2eb9ed28f61b0027c9fe767c043a0..a901a3c4592b694387d0afcc93f6c693c7cabccb 100644 --- "a/data/1.web\345\210\235\351\230\266/4.CSS/3.\345\256\232\344\275\215/config.json" +++ "b/data/1.web\345\210\235\351\230\266/4.CSS/3.\345\256\232\344\275\215/config.json" @@ -1,25 +1,36 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-bdbe42b0c7ef403e84428f3bc02b9e9a", "keywords": [], "children": [ { "position": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-448b9f11aad347babcd0bc2572556dbe" } }, { "top、left、bottom、right": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-657c4792a531417d83540f055b6cf537" } }, { "z-index": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c2d07d04c8b54afeaf032ad1d1c20cee" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/4.CSS/4.\345\270\203\345\261\200/config.json" "b/data/1.web\345\210\235\351\230\266/4.CSS/4.\345\270\203\345\261\200/config.json" index bb56898e4239c9abaa65ffd580a31e99e895f988..6622663fd931684b70ac2cde26b9263514c3cd65 100644 --- "a/data/1.web\345\210\235\351\230\266/4.CSS/4.\345\270\203\345\261\200/config.json" +++ "b/data/1.web\345\210\235\351\230\266/4.CSS/4.\345\270\203\345\261\200/config.json" @@ -1,31 +1,45 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-dfc15ef12b3540429f3394f5cfceeeea", "keywords": [], "children": [ { "Box Model": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2773302dee134e27a28e9c8558c47519" } }, { "FlexBox": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fc4f6b3d97ac4dde90340c1257a2111d" } }, { "Grid": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b796313e9bc24cb28c2a780e7483c324" } }, { "Column": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-34b385b4d1c741d2b3f2e08535188296" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/4.CSS/5.\346\240\267\345\274\217/config.json" "b/data/1.web\345\210\235\351\230\266/4.CSS/5.\346\240\267\345\274\217/config.json" index 8f89525a39ce1f7f8a53668c1d1a810fb763a657..4193f6943111525f3b96d031b54c09a7c990ac43 100644 --- "a/data/1.web\345\210\235\351\230\266/4.CSS/5.\346\240\267\345\274\217/config.json" +++ "b/data/1.web\345\210\235\351\230\266/4.CSS/5.\346\240\267\345\274\217/config.json" @@ -1,31 +1,45 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-7bd5e43bf8a54e94bef714a51162d673", "keywords": [], "children": [ { "背景": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-be91a0cbbb644660abc104147a4e5a6f" } }, { "文本": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bdb56476f3f64a88a362a913263adc49" } }, { "轮廓": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-77e95608e4ec4738afd23979da318646" } }, { "列表": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e2e5106b315c4c85b0709fce9d37aad8" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/4.CSS/6.\345\212\250\347\224\273/config.json" "b/data/1.web\345\210\235\351\230\266/4.CSS/6.\345\212\250\347\224\273/config.json" index 34933b439773c1a88649baf3fe8083da1a344f5b..cab78ab0d00ab7c492c29f294587203eb0157be5 100644 --- "a/data/1.web\345\210\235\351\230\266/4.CSS/6.\345\212\250\347\224\273/config.json" +++ "b/data/1.web\345\210\235\351\230\266/4.CSS/6.\345\212\250\347\224\273/config.json" @@ -1,19 +1,27 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-d9c0739691db40a18155de1620303eaf", "keywords": [], "children": [ { "Animation": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b324fddbb8e344909a75b100a94401b3" } }, { "transition": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3f0a3f8b5c0948daab6b6bfdbef14720" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/4.CSS/7.\345\272\224\347\224\250/config.json" "b/data/1.web\345\210\235\351\230\266/4.CSS/7.\345\272\224\347\224\250/config.json" index 66635ba792f3f9c1e10f6b3be4ddf8b02b02daa1..f08d80c18970b1329a7777c54d4179e6b6e2bf3e 100644 --- "a/data/1.web\345\210\235\351\230\266/4.CSS/7.\345\272\224\347\224\250/config.json" +++ "b/data/1.web\345\210\235\351\230\266/4.CSS/7.\345\272\224\347\224\250/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-c3815fa7108d4510bbea4681953b8d0c", "keywords": [], "children": [ { @@ -9,10 +9,16 @@ { "em、vh/vw、%": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-58b4f996f49944ff952085d01820dbd6" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-af5bb6606b634242bab039bb0c491e94" } }, { @@ -22,12 +28,20 @@ { "@media、rem": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6c0db5b4d363442596bd2871a0549823" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-793fc654cb6d48aeac2afa322ea6a0d3" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/4.CSS/config.json" "b/data/1.web\345\210\235\351\230\266/4.CSS/config.json" index 3407cf95a3919655576413ce3c70fe407e0719d7..a4c180b3e94c499fc7223dc7c5b8e3689e0af566 100644 --- "a/data/1.web\345\210\235\351\230\266/4.CSS/config.json" +++ "b/data/1.web\345\210\235\351\230\266/4.CSS/config.json" @@ -1,4 +1,6 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [] + "node_id": "web-e7ea2438dd824de7bb9fb38e4d05aafc", + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/5.JavaScript/1.\350\257\255\346\263\225/config.json" "b/data/1.web\345\210\235\351\230\266/5.JavaScript/1.\350\257\255\346\263\225/config.json" index f34b873b834d33cbeddfeb7d51c250c7ac2e38dd..fdc5ac793137fc58971119fc38d5dc5be4c47b2e 100644 --- "a/data/1.web\345\210\235\351\230\266/5.JavaScript/1.\350\257\255\346\263\225/config.json" +++ "b/data/1.web\345\210\235\351\230\266/5.JavaScript/1.\350\257\255\346\263\225/config.json" @@ -1,11 +1,14 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-ffd47a97143a413fb3a51683464d94eb", "keywords": [], "children": [ { "值、变量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d2810cf634b6452a9d74a7b9f411c4b6" } }, { @@ -15,28 +18,43 @@ { "基本类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-141ca86f5ca94e5f901061e05801143e" } }, { "类型判断": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ac7cd537fe164883b7ff9fcab818e772" } }, { "类型转换": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-60e678d6753748cc9de00b39a4541fdf" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a6a50d07494b4f1e9c418f570776c2bf" } }, { "流程控制": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fe5a5f40c858473f92ed8e2c1d5638de" } }, { @@ -46,22 +64,34 @@ { "数学": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-136621f1e3b44a4a8a52dac523fa2adc" } }, { "比较": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-be067c41384e4963b0372e3779998f01" } }, { "逻辑": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-791c710d55a449fc954c799bf08660be" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-50cdb27f252f4cf59a5480b6f04954c8" } }, { @@ -71,30 +101,47 @@ { "函数声明": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9e2388eb007a46dd8f06301f0dc1a89a" } }, { "函数表达式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-54316fb344ba4da38021325da2957f78" } }, { "回调函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-35c6389bfddb488ab7232d718bd270b3" } }, { "箭头函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3fc41f0cc33541998ddd5b742d68d95d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-162ab003d24a452c97189fe650d7d804" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/5.JavaScript/2.\346\225\260\346\215\256\347\261\273\345\236\213\346\267\261\345\205\245/config.json" "b/data/1.web\345\210\235\351\230\266/5.JavaScript/2.\346\225\260\346\215\256\347\261\273\345\236\213\346\267\261\345\205\245/config.json" index 83c33781c110afa71f0fa2d9176c85f321fec5a2..1c958400c0d18d51261a3eab1dc4cf11d8691fc0 100644 --- "a/data/1.web\345\210\235\351\230\266/5.JavaScript/2.\346\225\260\346\215\256\347\261\273\345\236\213\346\267\261\345\205\245/config.json" +++ "b/data/1.web\345\210\235\351\230\266/5.JavaScript/2.\346\225\260\346\215\256\347\261\273\345\236\213\346\267\261\345\205\245/config.json" @@ -1,79 +1,117 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-6e0cd53cfafa485ba92f6629c5b403c9", "keywords": [], "children": [ { "原始类型的方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-11959ed7726d49a19688eb41878fe407" } }, { "数字类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-11058561e9b64e69b7a66dfa9f55b13f" } }, { "字符串": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6ecf6ad21fba43a6bf6a392c708d5de2" } }, { "数组": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ddc9a8a2729748df990822b03fd19e37" } }, { "数组方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c5434d9d1f274700a9ecbcc6397350d7" } }, { "Iterable object(可迭代对象)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-278d96fe90064301887d8dc7237d4929" } }, { "Map and Set(映射和集合)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7541e23ee9af462689f97e03a092f333" } }, { "WeakMap and WeakSet(弱映射和弱集合)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-02eb436c545e48bcbe2b07aa9f749ccd" } }, { "Object.keys、values、entries": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-13b66d4131174c99bda2fb7a129bd4a4" } }, { "解构赋值": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-540957a651094acfb96689250bfbfa82" } }, { "日期和时间": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ca54337a714543089fe4a61528548699" } }, { "JSON序列化、反序列化": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b21cb950345d4488b8ad43cb708f556f" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/5.JavaScript/3.\345\257\271\350\261\241/config.json" "b/data/1.web\345\210\235\351\230\266/5.JavaScript/3.\345\257\271\350\261\241/config.json" index d674aeb8b4c51d4af2ea2abc5be64d7ca34f38ea..624d9bea1f165f0f4ec8dbf864efceff06fd9067 100644 --- "a/data/1.web\345\210\235\351\230\266/5.JavaScript/3.\345\257\271\350\261\241/config.json" +++ "b/data/1.web\345\210\235\351\230\266/5.JavaScript/3.\345\257\271\350\261\241/config.json" @@ -1,79 +1,117 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-d98e2de75644431893ee5b66419840b1", "keywords": [], "children": [ { "属性/字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dc552d73019d4b7285fd0b297817a199" } }, { "in 、for…in": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6149b819f2334cda82a4a39c461cadf3" } }, { "对象引用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-14403ceb9ff24f13a1134a3552bf4cff" } }, { "深拷贝、浅拷贝": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-349c13a28fdd4c8988e1576d9e755fd9" } }, { "Symbol": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1c38eaf7494548139a0a6009e465c835" } }, { "垃圾收集机制": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f80f25996eff485dabfc15af5bb7d376" } }, { "this": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-eabd41588f4e47b9a8df17ff79561336" } }, { "new": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d387e14732a84471a5579415d38daf90" } }, { "Optional chaining ‘?.’": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8ccc7bc0e71c4f5e874d1e1a8c2d4730" } }, { "类型转换Symbol.toPrimitive": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-315006f2f65b4fec9d672901c33626f5" } }, { "Property flags、descriptors": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a8c35ca8c9c04bf09a553605db2d34c2" } }, { "getters、setters": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-98bb3e346e4c40c2b6bd9b246d060f10" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/5.JavaScript/4.\345\207\275\346\225\260/config.json" "b/data/1.web\345\210\235\351\230\266/5.JavaScript/4.\345\207\275\346\225\260/config.json" index 4f91ea277516b26e49a947870a0f2b0cbad76751..b94f87f34643f5fa8103dc030a167cea39d54acc 100644 --- "a/data/1.web\345\210\235\351\230\266/5.JavaScript/4.\345\207\275\346\225\260/config.json" +++ "b/data/1.web\345\210\235\351\230\266/5.JavaScript/4.\345\207\275\346\225\260/config.json" @@ -1,79 +1,117 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-40e8a035f3a1422889cdadf17674f565", "keywords": [], "children": [ { "调用栈": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0e5e7f64cd4c4e5aad7e7461a0dd2047" } }, { "递归、尾递归": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0dd603ece70c4406accc93d9974c10b5" } }, { "arguments、params spread": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ac2bac5926ea4d24a8e6f4458f87153d" } }, { "作用域、闭包": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-222ea7dad67b456ab336ce5e095fc072" } }, { "var、变量提升": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3136644a150f4d12bbd49ab78e1e6b36" } }, { "IIFE、匿名自执行函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8d4cbf8a27754f1089de27d8190f48dd" } }, { "NFE、函数命名表达式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1d8a9da5e94f40169a427d4931500ebf" } }, { "箭头函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aca4633f26934c1bbae2f28173e14ec7" } }, { "new Function": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ba1c903e972b4863839ae055ec8cc955" } }, { "setTimeout、setInterval": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b6e295b688994a728dbde1aa561b6ac6" } }, { "call、apply、bind": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8ea26079608f459d97d2b960ee26e7bd" } }, { "部分施用、柯里化": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a068ecfc74bf42f28483c0ddc31bbf7b" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/5.JavaScript/5.\345\216\237\345\236\213/config.json" "b/data/1.web\345\210\235\351\230\266/5.JavaScript/5.\345\216\237\345\236\213/config.json" index 6b2ccba7da64cb980f98f2c1aed9271c832972a0..b659614bfa1b8a5702ab008c7e06c83cceb99e49 100644 --- "a/data/1.web\345\210\235\351\230\266/5.JavaScript/5.\345\216\237\345\236\213/config.json" +++ "b/data/1.web\345\210\235\351\230\266/5.JavaScript/5.\345\216\237\345\236\213/config.json" @@ -1,25 +1,36 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-4411d8ced9c54f238c76fbe7331460f9", "keywords": [], "children": [ { "原型链、继承": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fb8bf00755d849bcbca2a825ce245af6" } }, { "F.prototype": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aee8c04020aa427e96632dc1d2a7035e" } }, { "Object.prototype": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1fc3f0340fe84bc1bb330a682b0f1bfd" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/5.JavaScript/6.\347\261\273/config.json" "b/data/1.web\345\210\235\351\230\266/5.JavaScript/6.\347\261\273/config.json" index b64bb527ccc00e715eb98531e7e4c0164fbc17c8..cc56c92d15371bd24de1667bba798515013d2491 100644 --- "a/data/1.web\345\210\235\351\230\266/5.JavaScript/6.\347\261\273/config.json" +++ "b/data/1.web\345\210\235\351\230\266/5.JavaScript/6.\347\261\273/config.json" @@ -1,49 +1,72 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-61e30040405e4e96b8a3a93c61a18c7d", "keywords": [], "children": [ { "extend 继承": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2942295fe23d4374bc18ee09b6f8fdaa" } }, { "方法重载": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b4c413b493d24d6c80473c4b4382efa8" } }, { "构造函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ce9374e946f54679b9bb85926b0293a6" } }, { "Super、[[HomeObject]]": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-32d21ee6a07a46bbaded66a7e9b597ac" } }, { "静态属性、静态函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-655d26c4260546109f186bf421b7cd56" } }, { "私有属性、私有函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c16ef17febc54aff8862365a7ea240e6" } }, { "混合、Mixins": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ef654887f6c244a188f14f38779f2a86" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/5.JavaScript/7.\345\274\202\346\255\245\346\265\201\347\250\213\346\216\247\345\210\266/config.json" "b/data/1.web\345\210\235\351\230\266/5.JavaScript/7.\345\274\202\346\255\245\346\265\201\347\250\213\346\216\247\345\210\266/config.json" index 537787ea4f4e7a92a8b3e3b7b4b842f24c395b30..025de29ce874d78da2c1304ce8eb591faae21ed4 100644 --- "a/data/1.web\345\210\235\351\230\266/5.JavaScript/7.\345\274\202\346\255\245\346\265\201\347\250\213\346\216\247\345\210\266/config.json" +++ "b/data/1.web\345\210\235\351\230\266/5.JavaScript/7.\345\274\202\346\255\245\346\265\201\347\250\213\346\216\247\345\210\266/config.json" @@ -1,11 +1,14 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-9a211edd3a06451f8c381b9bedcf1970", "keywords": [], "children": [ { "Callback": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6e8fd9a3d24c403098a916272296bc25" } }, { @@ -15,30 +18,47 @@ { "Promises/A+、Promisification、Thenable": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-59722b36176641d4b70169a0ea9dd190" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fc5a863ed80c4a6797e6baba71c519bf" } }, { "async/await": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f830cde1bf9849e4bebe6cc752473c7b" } }, { "generator": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e14dd7d22ac54ea49c3b1fc24addc47b" } }, { "iterable": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-193740dddc974f63acbafdc0d67075ea" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/5.JavaScript/8.\346\250\241\345\235\227\345\214\226/config.json" "b/data/1.web\345\210\235\351\230\266/5.JavaScript/8.\346\250\241\345\235\227\345\214\226/config.json" index b3d8959e2f507affa06550b976627dc800147ed2..7c820eef8d0371af1601d45446761a4f59e2a794 100644 --- "a/data/1.web\345\210\235\351\230\266/5.JavaScript/8.\346\250\241\345\235\227\345\214\226/config.json" +++ "b/data/1.web\345\210\235\351\230\266/5.JavaScript/8.\346\250\241\345\235\227\345\214\226/config.json" @@ -1,19 +1,27 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-792d28f1ba464555ac84b1a77a631d38", "keywords": [], "children": [ { "commonJS": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a4f9ef8431bc4a5d9919f1ea4c6f88b7" } }, { "amd、cmd、umd、es-module": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9536347d2ad244059374509ccee4be63" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/5.JavaScript/9.\345\274\202\345\270\270\346\215\225\350\216\267/config.json" "b/data/1.web\345\210\235\351\230\266/5.JavaScript/9.\345\274\202\345\270\270\346\215\225\350\216\267/config.json" index 3f5a55c3eba622871a4d05a0cb7f1faebd6588b2..475f426e4434a4a00eefc9d0adb3f81135464722 100644 --- "a/data/1.web\345\210\235\351\230\266/5.JavaScript/9.\345\274\202\345\270\270\346\215\225\350\216\267/config.json" +++ "b/data/1.web\345\210\235\351\230\266/5.JavaScript/9.\345\274\202\345\270\270\346\215\225\350\216\267/config.json" @@ -1,25 +1,36 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-a265a59630f34a6c947aba3cb32784d9", "keywords": [], "children": [ { "try…catch…finally": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f0cc75f62a034c779b4c02d7158c0cd9" } }, { "throw": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ed77662bf9f14750a92c02fe0de0bc99" } }, { "Error": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1cbd5917997d4992831fff279ff8033c" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/5.JavaScript/config.json" "b/data/1.web\345\210\235\351\230\266/5.JavaScript/config.json" index 3407cf95a3919655576413ce3c70fe407e0719d7..0949f001a27550f250f9cc6f3cdf54bf9a1c0f7e 100644 --- "a/data/1.web\345\210\235\351\230\266/5.JavaScript/config.json" +++ "b/data/1.web\345\210\235\351\230\266/5.JavaScript/config.json" @@ -1,4 +1,6 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [] + "node_id": "web-168bf9aa629344f39271baec252f85f3", + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/1.DOM/config.json" "b/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/1.DOM/config.json" index 27b6713b3944567579620545c7a6e0ab6d57c3a3..c3c0613d1c63ad5dd1846794297a676a38731ba4 100644 --- "a/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/1.DOM/config.json" +++ "b/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/1.DOM/config.json" @@ -1,47 +1,68 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-95ced29cff4948deb44de24d60e7806e", "keywords": [], "children": [ { "DOM Tree": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-eee981218fd04be8b90eb0d77dcdcaac" } }, { "DOM Node": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6bbcde54b4dc4104bf3803f6d08a8889" } }, { "DOM Query": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a830fe3a36354045b29d1ce416ad0adf" } }, { "DOM Properties": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f3cd6a66cd774802b6fdfb19f950c8c1" } }, { "DOM Modify": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-98ff6db1888542fab175bf9d110cb709" } }, { "Styles": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0fb01f243fd44eefbbdcdf2f9aeea115" } }, { "Coordinates、Element Scrolling": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-164cf5190790470f979616ce9b7b2d10" } }, { @@ -51,24 +72,38 @@ { "UI Event": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9964fc80cbf646e29ce1cd6196d092e3" } }, { "Bubbling and Capturing": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2965d87566db4684bc0d095a3ba27509" } }, { "Event Delegate": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-926525acb06e426c9ab50063aeefd2b1" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1e62e79fbe2b4908adee03ac249485c3" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/2.\346\265\217\350\247\210\345\231\250API/config.json" "b/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/2.\346\265\217\350\247\210\345\231\250API/config.json" index f5551279fd772e173e40969ed5717bc9c1998764..7bfbc4c82731cf5d03b290fc1cfed9973213fe6c 100644 --- "a/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/2.\346\265\217\350\247\210\345\231\250API/config.json" +++ "b/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/2.\346\265\217\350\247\210\345\231\250API/config.json" @@ -1,23 +1,32 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-d3a11c7fdf394e08878ae5e69001154d", "keywords": [], "children": [ { "location": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d6df8cfd51ed4cdb9f31b7a7ea7e83d7" } }, { "history": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a51c2282615946998493dffaac345a5e" } }, { "navigator": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-30567288aea84d8b96779a3527d919f4" } }, { @@ -27,10 +36,16 @@ { "event.preventDefault()": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a6e4dc6fd8554362b7ee9e6e22dfa4f4" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-df2ff1f1aab84ddc8d08cdda36098301" } }, { @@ -40,12 +55,20 @@ { "change、focus、blur、submit": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c21f47e43b8a477faf563abec7341c1b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ca15a26ce3134764ad2ddc9a2b049115" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/3.\347\275\221\347\273\234/config.json" "b/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/3.\347\275\221\347\273\234/config.json" index 4a2fa5679d22bffc1850c7e8a52961f10623d87f..999e13e5a26b4e16e9823fda236c2835abbcbef4 100644 --- "a/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/3.\347\275\221\347\273\234/config.json" +++ "b/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/3.\347\275\221\347\273\234/config.json" @@ -1,31 +1,45 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-580b34a7a4c14317a5a57d44250e795d", "keywords": [], "children": [ { "XHR": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7cef28938f0541c0bb6ce2fdf5846855" } }, { "Fetch": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9df7a1377caa47fdbbc691b358b63b04" } }, { "JSONP": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-eba1495ae86849f991dfc91df10da9c2" } }, { "WebSocket": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-025d53b6ae1d47be87c173ba19d742cf" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/4.\346\235\203\351\231\220/config.json" "b/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/4.\346\235\203\351\231\220/config.json" index fe964e633d09226f9bfb98cde4fc1dfa3ff0ac55..003942241651655dc9c28c0cd5a035d26433e25a 100644 --- "a/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/4.\346\235\203\351\231\220/config.json" +++ "b/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/4.\346\235\203\351\231\220/config.json" @@ -1,37 +1,54 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-997cf9a07bf6444f831952f3842bfb9c", "keywords": [], "children": [ { "Cookie": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f28840e3b47c463f8cb53b9ce8e6a71f" } }, { "Session": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c3c7225c10934904b4e9d2d46004e22f" } }, { "OAuth": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1ad519552f3e419dba351568097b6277" } }, { "SSO": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cab634b7e40044ad938f069ed2b8fd31" } }, { "JWT": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5b52ad04ddff4f44bd2b970203e7def8" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/5.\345\256\211\345\205\250\344\270\216\351\232\220\347\247\201/config.json" "b/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/5.\345\256\211\345\205\250\344\270\216\351\232\220\347\247\201/config.json" index b6e7ea2285dffb52b82ecf2ee691b7182de03652..b03ea4ccd692fdb13097b403235910d7ba5253c6 100644 --- "a/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/5.\345\256\211\345\205\250\344\270\216\351\232\220\347\247\201/config.json" +++ "b/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/5.\345\256\211\345\205\250\344\270\216\351\232\220\347\247\201/config.json" @@ -1,43 +1,63 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-530c52a1ad784d4b8b84b76e2890aad3", "keywords": [], "children": [ { "Content Security Policy (CSP)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8a863863b73e41e1824c3fce6d1030b1" } }, { "CORS": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cb1027b0ed2c4d4ebfe62cdec1be432e" } }, { "XSS": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4cf2ccfae0f5436c83f9db53bca7b1e1" } }, { "CSRF": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d9b0f4d4babb4b2196f60954ae0f13ab" } }, { "MITM": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-502200b76300439a940c9e5e74009b65" } }, { "Samesite": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e0fa3d376f6c440cba86a2b6e730c240" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/6.\345\205\274\345\256\271\346\200\247/config.json" "b/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/6.\345\205\274\345\256\271\346\200\247/config.json" index a0316ed2d8041c2a0333be26c84e1d0c278d8f29..9852db095a61258cb47e0408e528303dd474bf85 100644 --- "a/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/6.\345\205\274\345\256\271\346\200\247/config.json" +++ "b/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/6.\345\205\274\345\256\271\346\200\247/config.json" @@ -1,37 +1,54 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-cfec2d1fe0fd4aa2a27c72541f0f28a5", "keywords": [], "children": [ { "Can I Use": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-61ab41caa0694340b0f96a3b6f25fa8e" } }, { "polyfill": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c15a6a651e2e4721991c73e50268b64f" } }, { "shim": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-389165fb497149fb93d29ea0de35fb45" } }, { "browserslist": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5a7c5def80eb448a8f13e685c53cc732" } }, { "Autoprefixer": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a79b8790856e42279fcaea40702ea780" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/7.\345\274\200\345\217\221\350\200\205\345\267\245\345\205\267/config.json" "b/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/7.\345\274\200\345\217\221\350\200\205\345\267\245\345\205\267/config.json" index 4bc169a2cde1b8470d56dc68809484e0c4157938..e95b86656339f9e3d7b9af90ff350f9f0e15e1e6 100644 --- "a/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/7.\345\274\200\345\217\221\350\200\205\345\267\245\345\205\267/config.json" +++ "b/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/7.\345\274\200\345\217\221\350\200\205\345\267\245\345\205\267/config.json" @@ -1,61 +1,90 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-edb9f96d103e4b39aa6a694add0798ed", "keywords": [], "children": [ { "设备模式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a8d37c643adb437db6ef9a60cbbd4f5f" } }, { "元素面板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d934690a0d774a3d98840fa356f69c94" } }, { "控制台面板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7ac19fc55779428397a6912dce713169" } }, { "源代码面板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-15d97c64395342bc88ea84aaa7de9d54" } }, { "网络面板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6bb16d07a7ee4a99bba1878c76fab0d6" } }, { "性能面板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cae78e8bcf4342febf9aa956fb4ce86d" } }, { "内存面板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ba92bfadb2fc405f879f1d584052a6ed" } }, { "应用面板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a31570b701db4eb1b047b04e6ecfc7ec" } }, { "安全面板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e250b2ee6da9455fb1e9a1b6c6c8207a" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/config.json" "b/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/config.json" index 3407cf95a3919655576413ce3c70fe407e0719d7..967db16cb454b9108b5c67b86709ee1fc3b7c210 100644 --- "a/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/config.json" +++ "b/data/1.web\345\210\235\351\230\266/6.\346\265\217\350\247\210\345\231\250/config.json" @@ -1,4 +1,6 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [] + "node_id": "web-6f6f3f3099bf4afabdf9c820c9848c95", + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/7.jquery/1.jQuery\345\237\272\347\241\200/config.json" "b/data/1.web\345\210\235\351\230\266/7.jquery/1.jQuery\345\237\272\347\241\200/config.json" index 55887fcedb2a8c43a62f173d8bf155ed6731b558..d1a5c0dc926a8e3e43dc0d542b658d8c12d3a72a 100644 --- "a/data/1.web\345\210\235\351\230\266/7.jquery/1.jQuery\345\237\272\347\241\200/config.json" +++ "b/data/1.web\345\210\235\351\230\266/7.jquery/1.jQuery\345\237\272\347\241\200/config.json" @@ -1,19 +1,27 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-cf47c1501cd54ea9a51552b0ec43c04a", "keywords": [], "children": [ { "认识jQuery": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2087f1df35834d4ea93c1972b647812c" } }, { "使用jQuery": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-690871665e774698be94aaa063e41626" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/7.jquery/10.jQueryUI\345\237\272\347\241\200/config.json" "b/data/1.web\345\210\235\351\230\266/7.jquery/10.jQueryUI\345\237\272\347\241\200/config.json" index 871929a9e05d078d05023c9da28fa4372a26c7b8..d5894ae969be75ee1fb8353bf80a56cf394103f7 100644 --- "a/data/1.web\345\210\235\351\230\266/7.jquery/10.jQueryUI\345\237\272\347\241\200/config.json" +++ "b/data/1.web\345\210\235\351\230\266/7.jquery/10.jQueryUI\345\237\272\347\241\200/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-e8d93d0e33c840a492c21d57369db113", "keywords": [], "children": [ { @@ -9,48 +9,74 @@ { "认识jQueryUI": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7da5e4da3bca4578ab2897b1316fff21" } }, { "jQueryUI库结构": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-01728ee1b3d649cd951c412a01515656" } }, { "组件分类": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4b613cf0ef0c4d8fab69821ae08e4456" } }, { "浏览器支持": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d87036186edd45ba8f795348f654dcd7" } }, { "使用主题定制器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ce1e898b2e2242a8bc710d54d869348a" } }, { "使用jQueryUI组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-53543f365789474687979f850ebbce4c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8a3d92e2b7214ba187a2e3cc25970582" } }, { "案例实战:使用第三方插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5d76fc35e55c48a3985cd89bdb3485e4" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/7.jquery/11.jQueryUI\344\272\244\344\272\222\345\274\200\345\217\221/config.json" "b/data/1.web\345\210\235\351\230\266/7.jquery/11.jQueryUI\344\272\244\344\272\222\345\274\200\345\217\221/config.json" index d237a45735143d6f0adddb0b11f61ce0225c6661..182ad298a14983633cf9263a27ca7b19afe443c3 100644 --- "a/data/1.web\345\210\235\351\230\266/7.jquery/11.jQueryUI\344\272\244\344\272\222\345\274\200\345\217\221/config.json" +++ "b/data/1.web\345\210\235\351\230\266/7.jquery/11.jQueryUI\344\272\244\344\272\222\345\274\200\345\217\221/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-5a9b0e35bdbb4627b04edff2ef181e3a", "keywords": [], "children": [ { @@ -9,36 +9,56 @@ { "拖动对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d992817084e549c5bf0284e511b338cb" } }, { "投放对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-713fcb786f554aa7909564d97982fcd2" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c599732d1e364cc3ab0169fb6a82c6a0" } }, { "缩放": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-06a44aa9d7e342a088135fd0e2a3b8cc" } }, { "选择": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cf6737473caa4b36bcb72a9fd2a176b9" } }, { "排序": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c2b234fe63d54bbf9cafd3f57abb7a33" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/7.jquery/12.jQueryUI\345\260\217\351\203\250\344\273\266/config.json" "b/data/1.web\345\210\235\351\230\266/7.jquery/12.jQueryUI\345\260\217\351\203\250\344\273\266/config.json" index 24bfae324bbd9a52daf2aa601040af023077d94b..8d84db841640d625c016073e2dc036ae47d04b01 100644 --- "a/data/1.web\345\210\235\351\230\266/7.jquery/12.jQueryUI\345\260\217\351\203\250\344\273\266/config.json" +++ "b/data/1.web\345\210\235\351\230\266/7.jquery/12.jQueryUI\345\260\217\351\203\250\344\273\266/config.json" @@ -1,37 +1,54 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-5800b5ce4b1344eeb5af409c3e09b922", "keywords": [], "children": [ { "选项卡": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b6cba9eae89c4b9d8099950ae079d42e" } }, { "手风琴": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f6cb9cd8d4ab4262bbc61aa78c46c1fc" } }, { "对话框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3dc75228152847a7b101242c073c65bb" } }, { "滑动条": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6f323955f25a4593bed6c844f4a8efb7" } }, { "日期选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8cbc2d068c1b45f18ca3401538ae7dbe" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/7.jquery/13.jQueryUI\347\211\271\346\225\210/config.json" "b/data/1.web\345\210\235\351\230\266/7.jquery/13.jQueryUI\347\211\271\346\225\210/config.json" index 4b87d46a7163fa0b30970b46a5dc250a67ef74ef..6a46cf46c06363e0196021f23083ac06f8a41797 100644 --- "a/data/1.web\345\210\235\351\230\266/7.jquery/13.jQueryUI\347\211\271\346\225\210/config.json" +++ "b/data/1.web\345\210\235\351\230\266/7.jquery/13.jQueryUI\347\211\271\346\225\210/config.json" @@ -1,85 +1,126 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-50d0eb5c953f4607bec92cfb2a7e55d3", "keywords": [], "children": [ { "特效核心": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-871ca8e0c4ca4600aec8cc6d79a772ab" } }, { "高亮": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-438e6d86b57b478faf8a8a20e608788f" } }, { "弹跳": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2c7f2de1e3b64f32b97dca6a1e6a480c" } }, { "摇晃": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4fcfd058701445569d229c1b23645cbd" } }, { "转换": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4b9387b5237443ce88a029b6efdf4b20" } }, { "缩放": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f6a691bbfed34406bbe3e641758c8309" } }, { "爆炸": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0d4add6919ba477eb87cd323ceb7d9f0" } }, { "抖动": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-13bd87e29ce549919abf82e3db3274f1" } }, { "落体": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4dd9c4b7db66466ab4ed63cefb1b825a" } }, { "滑动": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4c624a9b83d245c3808203a5af002da6" } }, { "剪辑": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5d2945dc378b48b69125d589205392d1" } }, { "百叶窗": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-826f7e7da495471a82042d05b4f933ba" } }, { "折叠": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0fc2fe4f2e724b3ea44427a9b4c03fcd" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/7.jquery/14.\346\265\217\350\247\210\345\231\250\345\222\214\345\257\274\350\210\252\345\274\200\345\217\221/config.json" "b/data/1.web\345\210\235\351\230\266/7.jquery/14.\346\265\217\350\247\210\345\231\250\345\222\214\345\257\274\350\210\252\345\274\200\345\217\221/config.json" index eb4fb5679f66ac8f4f15c312d761e6d0e7405c90..81349bbf1ca213076ac94d05147954c07c0e3663 100644 --- "a/data/1.web\345\210\235\351\230\266/7.jquery/14.\346\265\217\350\247\210\345\231\250\345\222\214\345\257\274\350\210\252\345\274\200\345\217\221/config.json" +++ "b/data/1.web\345\210\235\351\230\266/7.jquery/14.\346\265\217\350\247\210\345\231\250\345\222\214\345\257\274\350\210\252\345\274\200\345\217\221/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-f2984073e94b4c8f9c238e0acbcb9d68", "keywords": [], "children": [ { @@ -9,22 +9,34 @@ { "浏览器智能检测": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7d9cd0e2f98a4532bd447445d4145f72" } }, { "强制渲染": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ed39c6ae009b4417bafac28983754a0c" } }, { "浏览器插件检测": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3917489909004fc7a716ae289c8fca9b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-215c4493d0494159b07e905a691a93ee" } }, { @@ -34,28 +46,43 @@ { "使用jMenu菜单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-12387f88e99441378522e2c514d30fb1" } }, { "uiSelect下拉菜单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dae061de1ab648d4b537871fecb7592c" } }, { "Apycom弹出菜单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e70aa04c6dd84da69c7ef65e16e0fd1c" } }, { "Smartango内容菜单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c52b5be98f98436994112f246f5ed896" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-03e6a91fa2d94747abd9eb921468b417" } }, { @@ -65,18 +92,29 @@ { "jqDock码头导航": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-759119e1e32d4f9db70ddb4a8b86f47d" } }, { "AnythingSlider预览导航": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9e64fc3c4389496f81cfcb80766e6d1a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c79f6ee691494ddf9212257f6f0f578b" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/7.jquery/15.\350\241\250\346\240\274\345\274\200\345\217\221/config.json" "b/data/1.web\345\210\235\351\230\266/7.jquery/15.\350\241\250\346\240\274\345\274\200\345\217\221/config.json" index 1396f311468adbef5b153a8573e274dde4d07590..ad520b7706634bb420fc2d8109611510eceac082 100644 --- "a/data/1.web\345\210\235\351\230\266/7.jquery/15.\350\241\250\346\240\274\345\274\200\345\217\221/config.json" +++ "b/data/1.web\345\210\235\351\230\266/7.jquery/15.\350\241\250\346\240\274\345\274\200\345\217\221/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-dea692c877f74698b7d84586d6ca8c1e", "keywords": [], "children": [ { @@ -9,40 +9,61 @@ { "设计适合排序的表格结构": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8f0f8c2f3d9c4fa686b13721833d9635" } }, { "实现基本排序功能": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-efdb839bc8874d9095f94de42f3eda94" } }, { "优化排序性能": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d196113769e740efa45957b63ab57a90" } }, { "优化类型排序": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3347c5a097d943889e173e2206a2f243" } }, { "完善视觉交互效果": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aecc610bb47341fcac7025c31631aad4" } }, { "使用tablesorter插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4dab30d7ca5e424cb92f667ab65da36a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d33f9dce76c04a27941d49ba5cbb2b37" } }, { @@ -52,22 +73,34 @@ { "使用服务器分页": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-18d5a969347d4f7a92c8551cbb323c91" } }, { "使用JavaScript实现分页": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c89ccdfb6943458f82a3c20a479140ac" } }, { "使用Pagination插件分页": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-54ccb4a6b16d4a88a7575cce19ef8946" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-49b934869c7245f293658924f28ba2e2" } }, { @@ -77,34 +110,52 @@ { "快速过滤": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c6ae5ab273c14d838bf41c8850314af3" } }, { "多关键字匹配": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dbda50ade7a048428bae89642229983d" } }, { "列过滤": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c93f05a4914142faacb3da8255e7586f" } }, { "自定义表格过滤插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-39503764669247e5838eed645264465c" } }, { "使用uiTableFilter插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7b75847bde174f519fde76d55fe3620b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5329e714a1af4b01a9555e9d75a1c0de" } }, { @@ -114,36 +165,56 @@ { "实现表格编辑功能": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-df1eaa5a0bb64784b752c6aa8ffd4e26" } }, { "自定义表格编辑插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1dac8d9a9b224d829c12d335523bc11b" } }, { "使用tableRowCheckboxToggle": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0c761da76b03474aa05623294cba97d4" } }, { "使用TableDnD插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a91b61a28b734b1ba7b8717c616ad47f" } }, { "使用uiTableEdit插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1a827cf8f1e242d497c6b949c0c7f391" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-09d58e5ce3c140b490abcc973bc0518b" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/7.jquery/16.\350\241\250\345\215\225\345\274\200\345\217\221/config.json" "b/data/1.web\345\210\235\351\230\266/7.jquery/16.\350\241\250\345\215\225\345\274\200\345\217\221/config.json" index 6d677b05b246fdc4600600ad71b3c3c55ede1cd1..fd985366e7b8780050d5ce12611178ffcd96b5d3 100644 --- "a/data/1.web\345\210\235\351\230\266/7.jquery/16.\350\241\250\345\215\225\345\274\200\345\217\221/config.json" +++ "b/data/1.web\345\210\235\351\230\266/7.jquery/16.\350\241\250\345\215\225\345\274\200\345\217\221/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-bea08b8585924e8e9c39c8e703a770ff", "keywords": [], "children": [ { @@ -9,40 +9,61 @@ { "设计表单结构": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bd384b7f28174a05a75dc7dc955e1e69" } }, { "设计分组标题": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d8642c973d8a4a7783e71cb936d7f863" } }, { "设计提示信息": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-88b230e75da54be4a3da6f6e7e2e86be" } }, { "设计条件字段": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3f5f3d8dc6144a4f84233f6b4127a3c5" } }, { "使用checkbox插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4a5c0f449ce44855b35ac185f7e72e0b" } }, { "使用jqTransform插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e58b46d2c973447bbad0ce86062b37e7" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-09d099ebe39642828be6349c1d3eb805" } }, { @@ -52,22 +73,34 @@ { "表单验证基础": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fe012fc6eafe42ea9bf961ab7055e889" } }, { "使用jQueryValidation插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-589cb86d55d646369ff138d33785194f" } }, { "使用validationEngine插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-99fcafa9b24140a89abee84491320b9e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e9ddfbc4f6f642d0a629b474a32685f9" } }, { @@ -77,42 +110,65 @@ { "使用Elastic插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8425c84e0c53426baebc3924f0615e1b" } }, { "使用Autotab插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0b62ef273f154837b01960e178eec0b6" } }, { "使用maskedInput插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cef6e525ae0346ce8aad1e14686895df" } }, { "使用passwordStrength插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5008e4ad54974af2a3dabc8391a3164b" } }, { "使用formToWizard插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-73cb3c5f779e4f2d9b0d48101fd052b3" } }, { "使用datePicker插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3bc4792ecc544768a845fc71e7098fd9" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6c5e90f6127a490597b48d6a287fb100" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/7.jquery/17.jQueryMobile\345\237\272\347\241\200/config.json" "b/data/1.web\345\210\235\351\230\266/7.jquery/17.jQueryMobile\345\237\272\347\241\200/config.json" index 28776e396e7f3233b179e734bab6a2875a146bf9..8860b73b0f48faed312df8797f20a712c6332610 100644 --- "a/data/1.web\345\210\235\351\230\266/7.jquery/17.jQueryMobile\345\237\272\347\241\200/config.json" +++ "b/data/1.web\345\210\235\351\230\266/7.jquery/17.jQueryMobile\345\237\272\347\241\200/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-15c5cc178acc44d39939de4359c930c3", "keywords": [], "children": [ { @@ -9,22 +9,34 @@ { "移动设备统计分析": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f5e47d26f0264c26957860d07d5ba8b4" } }, { "手机浏览器兼容性测试结果概要": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-54570df8381c4fa7b7c7951975100dd6" } }, { "开发中可能遇到的问题": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4c165340758e4d36a7ec2a0718be7677" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-abeb288216154a18bfe87741b0d9d369" } }, { @@ -34,28 +46,43 @@ { "为什么要选择jQueryMobile": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0ac6ed140593466fa9a6deb0b14fc421" } }, { "jQueryMobile移动平台的兼容性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-27e6717ad19b4346ab49494afb99b74c" } }, { "jQueryMobile的功能": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-eccd3e82c1d747b58ea8594e76002f11" } }, { "jQueryMobile的特性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1c27e6bcecc840108d8e4e0a2e9696e0" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ee2d8d52df9e4faf93ba14c520344a6e" } }, { @@ -65,24 +92,38 @@ { "下载插件文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cf82264917ef41dca6c6f6b0b1a30cf7" } }, { "初始化配置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7037a02bfabc494aa13d14edb07beb3b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b089dcd08b7044ed8b3dd9e422bc9fb4" } }, { "案例:设计第一个移动页面": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-046d4c7f648f48389196f78927454ec2" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/7.jquery/18.\350\256\276\350\256\241\347\247\273\345\212\250\351\241\265\351\235\242\345\222\214\345\257\271\350\257\235\346\241\206/config.json" "b/data/1.web\345\210\235\351\230\266/7.jquery/18.\350\256\276\350\256\241\347\247\273\345\212\250\351\241\265\351\235\242\345\222\214\345\257\271\350\257\235\346\241\206/config.json" index d2c741bc304416f78dcee6612998316cdd2b3571..c5a1597132276f4530f0151cc025a112cbed581d 100644 --- "a/data/1.web\345\210\235\351\230\266/7.jquery/18.\350\256\276\350\256\241\347\247\273\345\212\250\351\241\265\351\235\242\345\222\214\345\257\271\350\257\235\346\241\206/config.json" +++ "b/data/1.web\345\210\235\351\230\266/7.jquery/18.\350\256\276\350\256\241\347\247\273\345\212\250\351\241\265\351\235\242\345\222\214\345\257\271\350\257\235\346\241\206/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-5e8410e9b6a74afca04ddb2841e831ef", "keywords": [], "children": [ { @@ -9,22 +9,34 @@ { "定义单页": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c2505f652d7c4dbaaca5aa9eb7799320" } }, { "定义多页": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7f850de6b1df4a1fb46fed00d97ae6c9" } }, { "定义外部页": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a4d604ea8506440c990b61d817d1dc39" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1ae81476c39a4326a15cddc868d7d478" } }, { @@ -34,18 +46,29 @@ { "定义对话框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2a3df7e76a1b4025ae1a293ebb2e0627" } }, { "定义关闭对话框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-62a282589bf34bd89672ea2f38307801" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2f9db34c031c41b290303d65ca5bb75b" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/7.jquery/2.\344\275\277\347\224\250\351\200\211\346\213\251\345\231\250/config.json" "b/data/1.web\345\210\235\351\230\266/7.jquery/2.\344\275\277\347\224\250\351\200\211\346\213\251\345\231\250/config.json" index e711221a994c47df22abcd9c84ebd4f5c87d5938..1303f2f52d10453fbdd34b79646da1c1281572bf 100644 --- "a/data/1.web\345\210\235\351\230\266/7.jquery/2.\344\275\277\347\224\250\351\200\211\346\213\251\345\231\250/config.json" +++ "b/data/1.web\345\210\235\351\230\266/7.jquery/2.\344\275\277\347\224\250\351\200\211\346\213\251\345\231\250/config.json" @@ -1,11 +1,14 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-96c80a03e4e743248ff559eddbba689f", "keywords": [], "children": [ { "jQuery选择器基础": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-608b3ff749704016b0f7b8b289c04f4e" } }, { @@ -15,34 +18,52 @@ { "ID选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9d584f59d5644918a755b3392c4dee21" } }, { "类型选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1c0e713b531d41969df971368bb7ca96" } }, { "类选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e315c249724b45f9b730f7c22188d91c" } }, { "通配选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fd5f7c3ccda247418c3333efdc4205ac" } }, { "分组选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ce3b6a570b5f431d9eb6e4570d523113" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9804b3590d1c47d7941da2335de307bf" } }, { @@ -52,16 +73,25 @@ { "层级选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b0813e35e9c648548f9290f69070cc17" } }, { "子元素选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-eed84379b38b4525a3a9e5c58c4d75b9" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b34ca5f886d4431387b3fcdf95d60040" } }, { @@ -71,28 +101,43 @@ { "定位过滤器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-223d6f5b7c9a4b5e9ebb4781c1af3213" } }, { "内容过滤器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8e51f837967e48c18e9b630b4fc3d1f4" } }, { "可见过滤器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1e03864d866147bb922512c032013c34" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a695a7c50dfa4576a93c1b74d947fcff" } }, { "属性选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0e023e9cef184285850205a8c0e9dd36" } }, { @@ -102,30 +147,47 @@ { "基本选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a24f5aedea7048019d0ea7230829fbdc" } }, { "高级表单选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-156401c736ae4490809f3848991ee272" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-afe1c0e8d45044ffb95fb0a65ffd4b4b" } }, { "jQuery选择器优化": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2d81b811245044b1949b4d74b0f310d0" } }, { "使用原生选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2cad71b8d8e74f3eab82bc225de2eec4" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/7.jquery/3.\344\275\277\347\224\250\350\277\207\346\273\244\345\231\250/config.json" "b/data/1.web\345\210\235\351\230\266/7.jquery/3.\344\275\277\347\224\250\350\277\207\346\273\244\345\231\250/config.json" index d7e79491c3c3e545028f7e080d4fde97dcb02c22..fe7f517f93e205206d8248d37c8c67ff16d0b9a8 100644 --- "a/data/1.web\345\210\235\351\230\266/7.jquery/3.\344\275\277\347\224\250\350\277\207\346\273\244\345\231\250/config.json" +++ "b/data/1.web\345\210\235\351\230\266/7.jquery/3.\344\275\277\347\224\250\350\277\207\346\273\244\345\231\250/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-8339045d6f6b4c28b8bf5202f74cc55d", "keywords": [], "children": [ { @@ -9,46 +9,70 @@ { "类过滤": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b0d029c94da840308550e9bdb10c670d" } }, { "下标过滤": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4112df90d87545fbb5ac69961bff245f" } }, { "表达式过滤": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d82d3d38df564dddb70abe3d90a1e783" } }, { "判断": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-78fdd1739d704e0bb2fcc061b64c8ff7" } }, { "映射": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2cb95acb6d314eb982b97660fca7e6c3" } }, { "清除": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-32833a6dff85423290149dfea4216550" } }, { "截取": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-699a225a9014483f8b76b5dd50baa066" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e235cfdd2dbd4c8996cf47f761c635f3" } }, { @@ -58,40 +82,61 @@ { "向下查找.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d03439ae16374e828780a512f36fa261" } }, { "向上查找.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3c3b9f9cd88544fd8c4cf10ad4e91c64" } }, { "向前查找.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-832511ce1c964c2a90f2846da1cd1216" } }, { "向后查找.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2037a0972650442da890afa5673e0283" } }, { "查找同辈元素": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9177bde06327472c9a66a39e09b998b0" } }, { "添加查找.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cfdfe1c6af104323b6a5a54dfcf1c593" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-33ca0d6afca2435e95e4a2be5b2ba3bc" } }, { @@ -101,18 +146,29 @@ { "合并jQuery对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bef3c7a90c7c4807b132fc9dca25c820" } }, { "返回jQuery对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-83ec8215af63429aae0c4ebafdfa787e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e212d404c660441abbd4390f662e75e7" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/7.jquery/4.\346\223\215\344\275\234DOM/config.json" "b/data/1.web\345\210\235\351\230\266/7.jquery/4.\346\223\215\344\275\234DOM/config.json" index 4f32793a8c951a895e84f30afef5b3b05ab797d3..ef19999c2114b1f665928c77c565dee69cee46fd 100644 --- "a/data/1.web\345\210\235\351\230\266/7.jquery/4.\346\223\215\344\275\234DOM/config.json" +++ "b/data/1.web\345\210\235\351\230\266/7.jquery/4.\346\223\215\344\275\234DOM/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-6479767562714a8d874a24b17ae3b4c1", "keywords": [], "children": [ { @@ -9,22 +9,34 @@ { "创建元素.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3674c51678764b9bb7a3805bbe294d3e" } }, { "创建文本.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1cd72943ef944bf4b632e4bfbc093b9f" } }, { "创建属性.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6041e492990f47539bcfafd11113b6ec" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bebe83af6dab416f9948d80f0308e780" } }, { @@ -34,16 +46,25 @@ { "内部插入.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3221ab6336ae4b8394f8f837d9ce6f3a" } }, { "外部插入.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-361a6ec3bd4f4f70aad0bc40ef1708cd" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-94feb6aa953d4d8c8c030909b222d04a" } }, { @@ -53,34 +74,52 @@ { "移出": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3eb0caf64c944ca596d28b2382f2424c" } }, { "清空": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0cea5bd0e49649a491c9dbf528407420" } }, { "分离": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9c4dcffc191c4c9c80e729ac1e1e8075" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-df063653180743c285964817a35a9931" } }, { "复制节点": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1199b8d891cd4403b57062560839ce3b" } }, { "替换节点": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4093142d687141fbbd10df3ba0fae40a" } }, { @@ -90,28 +129,43 @@ { "外包": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9deced42fe0542d4b50570a5e6cabfe2" } }, { "内包": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-140ec176cdd849fa9d0de1c9c37d776c" } }, { "总包": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d230aa561d5046feb7821700031a07a4" } }, { "卸包": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-31a07402c2b44f4d91eab7a350cc9a0f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e3552657398a42a1bb407f10b5d3b04a" } }, { @@ -121,22 +175,34 @@ { "设置属性.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6cd8e2fd15fa46be89b0f695f54cf9c0" } }, { "访问属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-70718dd9355046d8bfedf7cd25f5cd30" } }, { "删除属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c8e873e47af2486b81a7cf42a0b13b6f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6efe769ee86242d0801e677bf60c851e" } }, { @@ -146,28 +212,43 @@ { "添加类样式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f8dd1068c4534f45a7a8b5a8706b5817" } }, { "删除类样式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-14d7fb7dfd3442419f248d4766f146c6" } }, { "切换类样式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7112cc5a431443c98e57dcd217ef1627" } }, { "判断类样式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-254a4f4870144e8cbebaf9d51e18be2b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-06cf9b0488ae4c8c9cecc0563efbcd2d" } }, { @@ -177,22 +258,34 @@ { "读写HTML字符串": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-14d3b0e1781646c781e6466326bd76aa" } }, { "读写文本": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-20bc15ba1ded49fba6bb92ccdec55912" } }, { "读写值": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3e15206b57f6415a9164537eaa9db1ef" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bed57a0f1e7d4cf6baf18deebea195d4" } }, { @@ -202,36 +295,56 @@ { "读写CSS样式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ddab13a0fd4c489ca92fda4c88ab3aca" } }, { "绝对定位": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-734fce648503445ca5bfdbe7a1207f37" } }, { "相对定位": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fa8449c0e03c4b7da5f7266e37471267" } }, { "控制大小": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bf7644a1d39d4663adbc7b408e2068c0" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-562cde0e3b214a898135b38ac0ca1762" } }, { "遍历文档": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6fe1f7a83aac4725a4edb2203fa7cd90" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/7.jquery/5.\344\272\213\344\273\266\345\244\204\347\220\206/config.json" "b/data/1.web\345\210\235\351\230\266/7.jquery/5.\344\272\213\344\273\266\345\244\204\347\220\206/config.json" index 18b09b81afb1ead86c4c6871b545184107c29ed4..0215d699d2c9938ca758302ebf8281f1e78b8208 100644 --- "a/data/1.web\345\210\235\351\230\266/7.jquery/5.\344\272\213\344\273\266\345\244\204\347\220\206/config.json" +++ "b/data/1.web\345\210\235\351\230\266/7.jquery/5.\344\272\213\344\273\266\345\244\204\347\220\206/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-b97b1ef4d8744f04b09af8bdf65dd129", "keywords": [], "children": [ { @@ -9,40 +9,61 @@ { "绑定事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ec6f31c34b5e4ad3933f8747fadce729" } }, { "事件方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-120dc869b6304fbea5f359246aa5e534" } }, { "绑定一次性事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-687e0d8c0a7f4533abe831d162e3b4d6" } }, { "注销事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8fc8fb7458bc44649bc2632c8e83e8fa" } }, { "使用事件对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-53c51ab23b1d474498bde5fa95a1c5b0" } }, { "触发事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3ef31820db3845ccb608ed0f678c011e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c8ca8b14e125449e9934d0fab98de9c3" } }, { @@ -52,48 +73,74 @@ { "切换事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7834be3a50cc499e996e05d12dc98592" } }, { "使用悬停事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-32eea5689a54403d957af49d9de535a7" } }, { "事件命名空间": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a8778a9b09e6492085dd93a3f5efa59a" } }, { "绑定多个事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2b4f425ad318497bbc35589961aaac07" } }, { "自定义事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-98c107e806ec4a0eaa30bd55428997b2" } }, { "页面初始化": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b1a1962aeda84406a4e9cf43fc789437" } }, { "使用ready事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b7bccd0d5d054aaa88e77788d75cf421" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-de8cd6eef22647e6a803e252aa0ecbb1" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/7.jquery/6.\344\275\277\347\224\250Ajax/config.json" "b/data/1.web\345\210\235\351\230\266/7.jquery/6.\344\275\277\347\224\250Ajax/config.json" index 1e9ebac32a4c1bfb4a2ba21828e50a18b538c945..3b53b314c1bf4f6534b2ee176f3fadd2161ae59c 100644 --- "a/data/1.web\345\210\235\351\230\266/7.jquery/6.\344\275\277\347\224\250Ajax/config.json" +++ "b/data/1.web\345\210\235\351\230\266/7.jquery/6.\344\275\277\347\224\250Ajax/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-be1435fa952046f4a4ed788c8b9e6683", "keywords": [], "children": [ { @@ -9,48 +9,74 @@ { "认识Ajax": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-02269f5c8dd24a89bf0defe9fca0bdbb" } }, { "安装虚拟服务器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3c828cd3708746adbf64cb12c93c5dd0" } }, { "配置IIS组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-37205e0ff2a64b22b01d9d48b7292888" } }, { "定义虚拟目录": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-03298353f4984192b505ce94a3f9b6ce" } }, { "定义本地站点": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7f4d9b4a8ec94e9f869791c18239a1e6" } }, { "定义动态站点": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-47d22b82475f4a1f817c63ca3e57a619" } }, { "测试本地站点": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e92be77ef2974d88add8ed34e3a280cc" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f88b97dd7e8d4a9d9536e78dd958dc5b" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/7.jquery/7.\350\256\276\350\256\241\345\212\250\347\224\273/config.json" "b/data/1.web\345\210\235\351\230\266/7.jquery/7.\350\256\276\350\256\241\345\212\250\347\224\273/config.json" index cb1674f9b9dc6fa350440064f7cc1242f23051ac..70d267e650335617f2381e0859e8818b8bbc67ad 100644 --- "a/data/1.web\345\210\235\351\230\266/7.jquery/7.\350\256\276\350\256\241\345\212\250\347\224\273/config.json" +++ "b/data/1.web\345\210\235\351\230\266/7.jquery/7.\350\256\276\350\256\241\345\212\250\347\224\273/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-ddc149a8c98d418fb2a70e689b4a14ec", "keywords": [], "children": [ { @@ -9,46 +9,70 @@ { "显隐效果.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b83c2b7a3d0440e9bf809e4188b47335" } }, { "显隐切换.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-47af369b0f8a42f2bddf6040c88253a3" } }, { "滑动效果.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b9b2f67571bc47068e36d34e8acff2b7" } }, { "滑动切换.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4ffdd6be92cc4fb880a6c5517829b777" } }, { "淡入淡出.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ae616b2d527a490a8872eb1a4ddb3c19" } }, { "控制淡入淡出度": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ad5cf9c67fe74edda866872a85efad04" } }, { "渐变切换.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c8e6f5d05c4a40ff92cd96caca2976d2" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-80cafa7d13dd4b34a1a9a168337784a0" } }, { @@ -58,48 +82,74 @@ { "模拟show()方法.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-43795dd692f14bfb9aaa15940412345a" } }, { "自定义动画": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d24a3d8fd2d5493287c2dfa2bd406420" } }, { "滑动定位.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7a847e5b5d504726b41fdb3e920dfe3a" } }, { "停止动画.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bb8bfcfdbfaf45618f84b0963d16a7fb" } }, { "关闭动画.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9185c6754bd641ceb79439c291c59f6a" } }, { "设置动画频率": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c2e9ea9e3d5b4179b2fd1bfe08ddb6f4" } }, { "延迟动画.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-02541467dd8b41a3aff69727485901a1" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a8419ed31e4140a599d0b82930518a87" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/7.jquery/8.\344\275\277\347\224\250\350\276\205\345\212\251\345\267\245\345\205\267/config.json" "b/data/1.web\345\210\235\351\230\266/7.jquery/8.\344\275\277\347\224\250\350\276\205\345\212\251\345\267\245\345\205\267/config.json" index 4d7e649eccf1d0f15860b7a00e597b6235b1954a..a6863957680d21b0a8dbd3d593ad904484ea7528 100644 --- "a/data/1.web\345\210\235\351\230\266/7.jquery/8.\344\275\277\347\224\250\350\276\205\345\212\251\345\267\245\345\205\267/config.json" +++ "b/data/1.web\345\210\235\351\230\266/7.jquery/8.\344\275\277\347\224\250\350\276\205\345\212\251\345\267\245\345\205\267/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-a5a05f0a01df4c4185957083224ed654", "keywords": [], "children": [ { @@ -9,28 +9,43 @@ { "检测类型.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-87975e043f70492ca7e08c8bfb74c9ce" } }, { "检测版本号": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-01e764071fba4cc29514d87665adbe6f" } }, { "检测渲染方式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4d1eb26fb84b47c690ff99ba26118cd4" } }, { "综合测试.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-426b7c1f5c9c4535a7be55a67a0f0f88" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b6c27b5f8dfc4faa8f8f63ba72ed32cb" } }, { @@ -40,16 +55,25 @@ { "兼容其他库": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-db2a81f95a6f43b2bd5818e6d7131e12" } }, { "混用多个库": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fbad7d944e784d44bf9b0fa57d08cbb2" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e446eeb1d7d54baa9304989da7b2c460" } }, { @@ -59,82 +83,124 @@ { "修剪字符串": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-494e8e3dd43440118fe5061087861589" } }, { "序列化字符串": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ba9acd818a1344929d4a2a0e95ced918" } }, { "检测数组": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9f06ad20d1ca45d8b18881e1e6aa4b56" } }, { "遍历对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3977a0e204c1403393c78f06ed6a6773" } }, { "转换数组": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9e4580d6d16448bf8348b32d7c3b299d" } }, { "过滤数组": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-15c39708ff4545eaa95c316b4ac78d5e" } }, { "映射数组": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6a1d6631ea7c43779cb4fcc4a68317d9" } }, { "合并数组": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1743e7d77787458b98d6b3d3de3879ce" } }, { "删除重复项": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f9154ac6635441249d32934b94ea2cab" } }, { "遍历jQuery对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a74cc34876664f4b9b2baf3876f166d7" } }, { "获取jQuery对象长度": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-74c934e2334c41519e3a5a1ba9063327" } }, { "获取选择器和选择范围": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8e04798767b74f5dba6f53ca67bb2bef" } }, { "获取jQuery对象成员": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8c2a42533e7c427ab212cb016035b34e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ac69015f1fa1495aa94a7b64d0ccf961" } }, { @@ -144,64 +210,97 @@ { "认识缓存": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c40106d53790472b86ee5229ba9fe293" } }, { "定义缓存": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1d1581b9ceda40198d6b0d6c99a6fb20" } }, { "获取缓存": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-81cb2c22487948a9abe108a949a86b5b" } }, { "删除缓存": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1ce65d4b6984410b8f71fc2688493002" } }, { "jQuery缓存规范": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c4500adb305340f381fad39eea8023e1" } }, { "认识队列": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0d9f30ff0c274eeea825412f220fa7d3" } }, { "添加队列": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3d228803c1fb45ae8687ecdca7712001" } }, { "显示队列": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a70a2ca42e4e4d56a5e167a5cdb7e6e5" } }, { "更新队列": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-444be29506c94243a86ce4b380974f00" } }, { "删除队列": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3319e8d4c61d493483315e77ca1a45ae" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f589080de7fe475e9a9e90e4a6ffd2f3" } }, { @@ -211,34 +310,52 @@ { "认识deferred对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-86f2c96e2c9f495e820748150f53a691" } }, { "Ajax链式写法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a04cee58cc0b495e809d8d000eb13743" } }, { "定义同一操作的多个回调函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ebe3015736594f34852038136ad6b317" } }, { "为多个操作定义回调函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f1f39d65ffa640b089ee97c5aed8480f" } }, { "普通操作的回调函数接口": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-88950ad6392942a68d3f98a3b63425df" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ecb60a60deb84aa189d44a19f809a581" } }, { @@ -248,48 +365,74 @@ { "添加回调函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b6616f3931c14211abb5e202e7f5bd72" } }, { "删除回调函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-27b60dc744bc42b49771680077d2abf5" } }, { "判断回调函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-00338dee51a545dfa0729b2861db68f0" } }, { "清空回调函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-99e6e197cfa64a3bacd486bfc8dba2e2" } }, { "禁用回调函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8c7cc6797f4445e88161a98ac2f6bcc1" } }, { "触发回调函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9e7a3e8a217642c2a5adb5c857091f0a" } }, { "锁定回调函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0285946564f6491fb9056429288b02b6" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d7593ecdc73d49fab87a52eb50004807" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/7.jquery/9.\350\207\252\345\256\232\344\271\211\346\217\222\344\273\266/config.json" "b/data/1.web\345\210\235\351\230\266/7.jquery/9.\350\207\252\345\256\232\344\271\211\346\217\222\344\273\266/config.json" index 6412ec03a410cdedf7fdde8051da8d78571c7c73..cb0f84401d15f92b75d9e4c943994558526a738e 100644 --- "a/data/1.web\345\210\235\351\230\266/7.jquery/9.\350\207\252\345\256\232\344\271\211\346\217\222\344\273\266/config.json" +++ "b/data/1.web\345\210\235\351\230\266/7.jquery/9.\350\207\252\345\256\232\344\271\211\346\217\222\344\273\266/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-d96744de9ba7429c9c44c82ed1c49700", "keywords": [], "children": [ { @@ -9,96 +9,146 @@ { "jQuery插件开发规范": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ae16a8f9405c4a618b8365e7c4484103" } }, { "jQuery插件设计原理": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-340cbb7750d44506a6c73cc068c7fa41" } }, { "定义工具函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-459e160a87814c0dbfe1693274d5ef51" } }, { "定义jQuery方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5630c600b93348768da6bca14a5d3e7f" } }, { "匹配元素对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5ab70a5cecbf484b8c4d8d8f2b0fe3ff" } }, { "使用extend()": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e4f17ac8d59c4e3dae4eebc076cd6e22" } }, { "定义jQuery选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ee7fe3cae8cb46afa017e814a40937f7" } }, { "优化默认选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9bf2a0f6544e4db59bdb1498d84988bb" } }, { "封装插件.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f2643e399371440e8a81bd080e5c5a32" } }, { "开放参数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-15668d772e0b49d3b0c282948084ac49" } }, { "开放功能": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-87e2505be6ab4728a0e817f44e9769c4" } }, { "保留隐私": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b7c312d94aa6424c8668fbbf8f338e10" } }, { "非破坏性实现": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-19d40cdc887646f7a9d61211e8bf3b3a" } }, { "添加事件日志": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cae608757ea84bc5ac98d963b6d90d6d" } }, { "简化式插件设计": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4f58ee6066f14ff1af44c413a5a758a0" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-11e8fdc514104d919a508b5692cf6a20" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/7.jquery/config.json" "b/data/1.web\345\210\235\351\230\266/7.jquery/config.json" index 3407cf95a3919655576413ce3c70fe407e0719d7..a1c3558d33cea722f5bff5317ebc7899a872ba92 100644 --- "a/data/1.web\345\210\235\351\230\266/7.jquery/config.json" +++ "b/data/1.web\345\210\235\351\230\266/7.jquery/config.json" @@ -1,4 +1,6 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [] + "node_id": "web-369123a34fb44f03b2df6f80fb27fd6b", + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/8.\347\275\221\347\273\234\350\257\267\346\261\202/1.json/config.json" "b/data/1.web\345\210\235\351\230\266/8.\347\275\221\347\273\234\350\257\267\346\261\202/1.json/config.json" index f6416a1a57a86a638c71ad1c8742a38349a88fe3..3d6b6830c369b8920f5854f97e6af41d7d5125f1 100644 --- "a/data/1.web\345\210\235\351\230\266/8.\347\275\221\347\273\234\350\257\267\346\261\202/1.json/config.json" +++ "b/data/1.web\345\210\235\351\230\266/8.\347\275\221\347\273\234\350\257\267\346\261\202/1.json/config.json" @@ -1,6 +1,8 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-f9a6539c2ab44f368b0f8dc569069c8a", "keywords": [], "children": [], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/8.\347\275\221\347\273\234\350\257\267\346\261\202/2.ajax/config.json" "b/data/1.web\345\210\235\351\230\266/8.\347\275\221\347\273\234\350\257\267\346\261\202/2.ajax/config.json" index f6416a1a57a86a638c71ad1c8742a38349a88fe3..f1c882ba45c083b0907525fb3a826ff144d0c30b 100644 --- "a/data/1.web\345\210\235\351\230\266/8.\347\275\221\347\273\234\350\257\267\346\261\202/2.ajax/config.json" +++ "b/data/1.web\345\210\235\351\230\266/8.\347\275\221\347\273\234\350\257\267\346\261\202/2.ajax/config.json" @@ -1,6 +1,8 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-cdcc4ac28fe7417dad9cb7362eaf6532", "keywords": [], "children": [], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/8.\347\275\221\347\273\234\350\257\267\346\261\202/3.axios/config.json" "b/data/1.web\345\210\235\351\230\266/8.\347\275\221\347\273\234\350\257\267\346\261\202/3.axios/config.json" index f6416a1a57a86a638c71ad1c8742a38349a88fe3..87576ee240c36407e757b1ccab2dd5cec6dc9cee 100644 --- "a/data/1.web\345\210\235\351\230\266/8.\347\275\221\347\273\234\350\257\267\346\261\202/3.axios/config.json" +++ "b/data/1.web\345\210\235\351\230\266/8.\347\275\221\347\273\234\350\257\267\346\261\202/3.axios/config.json" @@ -1,6 +1,8 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-96de29e3c90f48a5b26bd4ed117a348e", "keywords": [], "children": [], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/8.\347\275\221\347\273\234\350\257\267\346\261\202/4.mock/config.json" "b/data/1.web\345\210\235\351\230\266/8.\347\275\221\347\273\234\350\257\267\346\261\202/4.mock/config.json" index f6416a1a57a86a638c71ad1c8742a38349a88fe3..41ca4838e383e9ddf37783a35667f86a5097c258 100644 --- "a/data/1.web\345\210\235\351\230\266/8.\347\275\221\347\273\234\350\257\267\346\261\202/4.mock/config.json" +++ "b/data/1.web\345\210\235\351\230\266/8.\347\275\221\347\273\234\350\257\267\346\261\202/4.mock/config.json" @@ -1,6 +1,8 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-d551b7fc7a2345d4919e2dedd92bac9c", "keywords": [], "children": [], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/8.\347\275\221\347\273\234\350\257\267\346\261\202/5.proxy/config.json" "b/data/1.web\345\210\235\351\230\266/8.\347\275\221\347\273\234\350\257\267\346\261\202/5.proxy/config.json" index f6416a1a57a86a638c71ad1c8742a38349a88fe3..32a1b801d739c5842bea7a44b41ab3a0c2aa2bbf 100644 --- "a/data/1.web\345\210\235\351\230\266/8.\347\275\221\347\273\234\350\257\267\346\261\202/5.proxy/config.json" +++ "b/data/1.web\345\210\235\351\230\266/8.\347\275\221\347\273\234\350\257\267\346\261\202/5.proxy/config.json" @@ -1,6 +1,8 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-e4587f73acd845f6887a86ae230ddb02", "keywords": [], "children": [], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/8.\347\275\221\347\273\234\350\257\267\346\261\202/config.json" "b/data/1.web\345\210\235\351\230\266/8.\347\275\221\347\273\234\350\257\267\346\261\202/config.json" index 3407cf95a3919655576413ce3c70fe407e0719d7..897a12d2a438e6f6281206ab7a7f6b982fb5fead 100644 --- "a/data/1.web\345\210\235\351\230\266/8.\347\275\221\347\273\234\350\257\267\346\261\202/config.json" +++ "b/data/1.web\345\210\235\351\230\266/8.\347\275\221\347\273\234\350\257\267\346\261\202/config.json" @@ -1,4 +1,6 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [] + "node_id": "web-592e3ff39e9c4e9093f26de5be14dd9b", + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/1.HTML 5\347\247\273\345\212\250Web\345\274\200\345\217\221\345\256\236\346\210\230/config.json" "b/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/1.HTML 5\347\247\273\345\212\250Web\345\274\200\345\217\221\345\256\236\346\210\230/config.json" index 7c345759bcbc02d27664652fc1381149854cf95d..7f5b2ca62e0cf3475b41fe74ebbe925b20a7efee 100644 --- "a/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/1.HTML 5\347\247\273\345\212\250Web\345\274\200\345\217\221\345\256\236\346\210\230/config.json" +++ "b/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/1.HTML 5\347\247\273\345\212\250Web\345\274\200\345\217\221\345\256\236\346\210\230/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-4d7e55f2439443e2a0501c01d32d79b3", "keywords": [], "children": [ { @@ -9,22 +9,34 @@ { "HTML能干什么": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-366d5ece5d9e4da48f86dc14fd016519" } }, { "HTML的核心要素": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ce87b3ba4d16409da2ac107fc7625cba" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-211509d2913449b2b6c2255c18fb7c13" } }, { "HTML的语义来源": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d89613c6435a4048bdce343de45fc205" } }, { @@ -34,96 +46,146 @@ { "全局属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-856e82055ea9442eb945c2645a976839" } }, { "HTML 5与它的全局属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f136fcf3b57245a59e6fef37e3462e25" } }, { "内容模型(content models)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-789eec6c76ba4b0c965b0cbf9efa65f5" } }, { "文档元数据(Document metadata)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2f85ed90181948428a3e66efd4909fa6" } }, { "区块(sections)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b1e308535598439bb244363b1ae3a5dc" } }, { "分组内容(grouping content)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-14d7de0a7cf14023ac08d41a870afffe" } }, { "文本级语义(text-level semantics)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9dbfca0e816d4620b629adb5dc2c2c11" } }, { "修改记录(edits)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e8fb75ae8e234c10a820c3fb3e2b7ed8" } }, { "嵌入内容(embedded content)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8115dfe57852470885016a9d9059d229" } }, { "表格数据(tabular data)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cdd0ed2aa05843c19d35a3eec2e460f2" } }, { "HTML 5表单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-be67c1067a9144029dbba5b47aeb40c6" } }, { "input元素和其属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ce9d88213eb145a48087737f09839a97" } }, { "表单操作": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c8b990de307144a68d7cde551a3f730d" } }, { "HTML 5表单兼容性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-14737c55ae7444f1949e8bc389083d9e" } }, { "交互式元素(Interactive elements)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e6f0ca67d983462e8906d0d3baeb5c89" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bffd1a754c404bce8313ddd04c1cda11" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/10.history\344\270\216\345\257\274\350\210\252/config.json" "b/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/10.history\344\270\216\345\257\274\350\210\252/config.json" index 112a2c4176d1d008d7d8ab4e8550042cf07698cb..24b5ce00760c9d58021c119e82ec6b7ef67ffdc5 100644 --- "a/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/10.history\344\270\216\345\257\274\350\210\252/config.json" +++ "b/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/10.history\344\270\216\345\257\274\350\210\252/config.json" @@ -1,25 +1,36 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-d6f9ee09aa0c405b83f84449f910d31c", "keywords": [], "children": [ { "基于hashchange事件管理导航": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-91996a68faea48308624290b0777505f" } }, { "HTML 5 history API": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b66a93f36df34e1cb61fad4db00efff1" } }, { "history.js": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-672962c827cd44588d2438a74c0e2cb5" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/11.\347\253\231\345\234\250\345\267\250\344\272\272\344\273\254\347\232\204\350\202\251\344\270\212--jQuery Mobile/config.json" "b/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/11.\347\253\231\345\234\250\345\267\250\344\272\272\344\273\254\347\232\204\350\202\251\344\270\212--jQuery Mobile/config.json" index 662aca182c5861a672674005c892689a743df3c6..758387555b0a20ca6d4140370bd208f7c3ea7e24 100644 --- "a/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/11.\347\253\231\345\234\250\345\267\250\344\272\272\344\273\254\347\232\204\350\202\251\344\270\212--jQuery Mobile/config.json" +++ "b/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/11.\347\253\231\345\234\250\345\267\250\344\272\272\344\273\254\347\232\204\350\202\251\344\270\212--jQuery Mobile/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-c3b080d926964f818aa1a4ce6f12dcb3", "keywords": [], "children": [ { @@ -9,16 +9,25 @@ { "HTML 5移动应用技术大观": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-25604c22b0b1468b80ff6584df5b474f" } }, { "因地制宜、量体裁衣": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-54fcf2329d424b11bea05ab96f901ee2" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-93d00c9b26024e3191b4749060136bc4" } }, { @@ -28,102 +37,155 @@ { "综述": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b20543db16864176a041eaec573a726f" } }, { "Hello,jQuery Mobile!": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-077d48ab08c648549e57387d33af6f89" } }, { "页面(Pages)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8673b60d47154dc1b9654505357f870d" } }, { "Ajax导航模型和转场动画(transitions)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ab1bd1fea0134aa2adfa9d59eab8d94d" } }, { "UI组件--一切皆响应": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cb155205ae9943a08b4090f5d6c2e7fb" } }, { "UI组件--表单元素": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5cc9b602e84744929df12039b3707b03" } }, { "UI组件--Header & Footer": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3b90a83f9b104d51aab4602ef1a2d3f0" } }, { "UI组件--ListView": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e3a5343e33f54513b0c31705856b74db" } }, { "UI组件--Collapsibles和Accordions": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c38870052f23465697af5bd832362780" } }, { "UI组件--popup": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-93623f3d23e94d4fa4605ebdaf225d29" } }, { "UI组件--dialog": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bb713b7eb0c3491a9ee820330d635614" } }, { "响应式组件--responsive grids": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3ffe392f8124487ebf64f0f1ad9e0ed9" } }, { "响应式组件--reflow tables": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-783199f105d04e74b64deab4e10f025e" } }, { "响应式组件--Column Toggle tables": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-28fd0171e3e44cf3b929208a31a8aa52" } }, { "响应式组件--sliding panels": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7857103612414f73bcd32566e420d1c2" } }, { "主题化和themeroller": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5564560a213545caac20e34592275de3" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-53913445f53340759fd455a491149094" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/12.Sencha Touch/config.json" "b/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/12.Sencha Touch/config.json" index f6416a1a57a86a638c71ad1c8742a38349a88fe3..793fc56f0a5327bafa20c0fe2e953ff8c63a5770 100644 --- "a/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/12.Sencha Touch/config.json" +++ "b/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/12.Sencha Touch/config.json" @@ -1,6 +1,8 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-cb0aa182fbb9465abfccaeba3344cf84", "keywords": [], "children": [], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/2.\345\210\235\346\216\242CSS 3/config.json" "b/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/2.\345\210\235\346\216\242CSS 3/config.json" index 5dee8e22c76890fc19dfcf9274a1021d09dd41e4..6467e79daf182db35b2e7c55106065c8b0dc127b 100644 --- "a/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/2.\345\210\235\346\216\242CSS 3/config.json" +++ "b/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/2.\345\210\235\346\216\242CSS 3/config.json" @@ -1,11 +1,14 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-1f5e2adb3efc477eaf72b5563287ff34", "keywords": [], "children": [ { "关于CSS的那件小事": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-889da58fe4174ac48fda26b765465e0d" } }, { @@ -15,28 +18,43 @@ { "语法、层叠和特殊性(specificity)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fb6ea066ba4b4d20a52844f7105ba84e" } }, { "框模型(Box Model)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2d12a453d9e340be886704e07c28fd6f" } }, { "可视化格式模型(visual formatting model)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2b0556b070c749b7b256646c622608fb" } }, { "表格": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d74ab6cf08e849aa98c6ce0c5398ad6d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e2255c6295774da4bea9a31a676727e5" } }, { @@ -46,28 +64,43 @@ { "属性选择器的妙用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6b4020800b254f83b2f8a27915344d4e" } }, { "强大的结构性伪类(Structural pseudo-classes)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2b24896982544246bd69140e759ca1ca" } }, { "其他选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-02e206c5eedc4264a6d51b7acb4602d9" } }, { "CSS 4中的选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-eee14e5143d9428a8452d03b4f065b1f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-60d6eb00dcd44487a87e7218ddae7cb2" } }, { @@ -77,22 +110,34 @@ { "背景和边框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-eff334fbe12c4789b08013a07d934d9a" } }, { "渐变和阴影": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bb329fa00fc64d1c8da6f095773c6c66" } }, { "自定义字体": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-19e84f481caa43d4a3ae07e17f7d28d1" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f05c0f7db6a74095a67292457a9056d7" } }, { @@ -102,22 +147,34 @@ { "炒冷饭--负边距与浮动": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e32f164f8c5b4f9aa4c565113313ec53" } }, { "栅格系统与多列布局": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5902bd17197e48f9b5f4916b12c559d3" } }, { "弹性盒布局(Flexible Box)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c7b082283cd64b0eb8b96b73e9af006b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c9d94cee21b64dcaaf18a4b033d7b029" } }, { @@ -127,22 +184,34 @@ { "CSS变形(CSS transform)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6d4a6482f5eb49198e5f64a02ede4267" } }, { "CSS过渡(CSS Transitions)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d678e76851fd4308a95b051130beff95" } }, { "CSS动画(CSS Animations)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-49c43273a5604bc9beb0e00dcfa0b452" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-accc0c2d3ce34a8f9af5ba568ebe2299" } }, { @@ -152,42 +221,65 @@ { "从两栏布局开始说起": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-acab0d1b5e6a4bd09994010edb731cb5" } }, { "从media到media queries": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-09abc29c8e6f4a1798436f56888a65fb" } }, { "响应式栅格系统": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bedeadf406e04c25b350e1cf86e36e03" } }, { "移动优先(mobile first)理念": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b3c547109fe74710ad55ff0e342083a7" } }, { "另一种思路:后端模板输出的优化": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f20cffd7efbb492fb7117045e93d5117" } }, { "其他细节": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-252a7d28597e49df8cdaad3019ef09ad" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d0440ffb6561493a844f156d8ad2e335" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/3.\344\273\216\347\275\221\351\241\265\357\274\210Web page\357\274\211\345\210\260\345\272\224\347\224\250\357\274\210Application\357\274\211/config.json" "b/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/3.\344\273\216\347\275\221\351\241\265\357\274\210Web page\357\274\211\345\210\260\345\272\224\347\224\250\357\274\210Application\357\274\211/config.json" index 47b5963246a97e878862bef638f70612d0e9e44e..fd9ce6680d653f62948ab8c613e99bb9b386a7a8 100644 --- "a/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/3.\344\273\216\347\275\221\351\241\265\357\274\210Web page\357\274\211\345\210\260\345\272\224\347\224\250\357\274\210Application\357\274\211/config.json" +++ "b/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/3.\344\273\216\347\275\221\351\241\265\357\274\210Web page\357\274\211\345\210\260\345\272\224\347\224\250\357\274\210Application\357\274\211/config.json" @@ -1,11 +1,14 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-00d72f6ae86247949ad49fb72678c064", "keywords": [], "children": [ { "Web不能承受之重": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-19a639a5f5c64759becccb01c5b8ca14" } }, { @@ -15,22 +18,34 @@ { "cookie和cookie的局限": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d3ec5af670cc410193901f30393f47cb" } }, { "来自HTML 5的Web Storage": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-23d70dc545df4d17b99d749d2555d243" } }, { "IE的userData": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4b01783c7e48479c83a4f12c62270737" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-059cc152e52f46a9abd3a1006fc20512" } }, { @@ -40,16 +55,25 @@ { "缓存和应用缓存": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5b3523845c3340a3aa1f315bed452760" } }, { "应用缓存的基本使用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e47e00acf9f84b7595c59fb75b4e052e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c3d4e0b65e41485aa524505aeb3fb796" } }, { @@ -59,16 +83,25 @@ { "模拟拖放": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-362db0d360f44bb5a171bfd372a6e14d" } }, { "原生拖放": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-71623d917dad4b3ca138318d787e72c4" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c2470be4f47b4f01bb29fd8e953b741b" } }, { @@ -78,18 +111,29 @@ { "选择文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1d3a65ee9f7f495c99f3218a144ba0e0" } }, { "操作文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-22fce6f078e94390bba8ada1ced0c12d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6d1e89f8d5e0487ba89008d05d7853eb" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/4.\346\214\207\345\260\226\344\270\213\347\232\204\346\265\217\350\247\210\345\231\250/config.json" "b/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/4.\346\214\207\345\260\226\344\270\213\347\232\204\346\265\217\350\247\210\345\231\250/config.json" index 7ac3078f3ec23b9f00e17a617e0790deb1ac817e..1f08c160f5cc5ad92f88635c59421ab282ff1e8d 100644 --- "a/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/4.\346\214\207\345\260\226\344\270\213\347\232\204\346\265\217\350\247\210\345\231\250/config.json" +++ "b/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/4.\346\214\207\345\260\226\344\270\213\347\232\204\346\265\217\350\247\210\345\231\250/config.json" @@ -1,37 +1,54 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-d4b577d151b64094a78132df5ddd8805", "keywords": [], "children": [ { "基本touch事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-db54f1f7090640688817f471c7a3873a" } }, { "模拟手势事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9fed6d4023e24caf9223cb3b0abf02f9" } }, { "hammer.js": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-be2ebbabdbdf4132850a01349c2cbdfc" } }, { "实例:精仿iOS的相册": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-80adfd3c27d246148939d0cfe1fce697" } }, { "工具": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3a6bda27d83c4392b6e7f789ae32f2db" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/5.\345\234\260\347\220\206\345\256\232\344\275\215\357\274\210Geolocation API\357\274\211/config.json" "b/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/5.\345\234\260\347\220\206\345\256\232\344\275\215\357\274\210Geolocation API\357\274\211/config.json" index 63f97c8f41fa04094e9a1eab6990af36fb935481..cf215f23e1b3a394792efd4b57d60bda4b81c7ac 100644 --- "a/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/5.\345\234\260\347\220\206\345\256\232\344\275\215\357\274\210Geolocation API\357\274\211/config.json" +++ "b/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/5.\345\234\260\347\220\206\345\256\232\344\275\215\357\274\210Geolocation API\357\274\211/config.json" @@ -1,31 +1,45 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-c15d81b0b1f94d12886eca2dde3c9a04", "keywords": [], "children": [ { "获取当前位置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1d7ba01e515b4d90bc4c137433bb9495" } }, { "监视位置变化": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ae87900979284497b909589c22c6538c" } }, { "来半斤Google maps尝尝": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-844bb196d74a495ba4c8353364cf047d" } }, { "开发者工具": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f8de316f932044599c01c334e017d1d0" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/6.Web Worker/config.json" "b/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/6.Web Worker/config.json" index 2b13c9c961b46a9e368b7b47f38abd9988b0e206..553a08e05725680e822d70814f697fbb564e0207 100644 --- "a/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/6.Web Worker/config.json" +++ "b/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/6.Web Worker/config.json" @@ -1,31 +1,45 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-93c5d72148a2465883e98be06fd6ec76", "keywords": [], "children": [ { "单线程语言之殇": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7ad8fdcd6f8242a28ee74bee9f30393e" } }, { "为JavaScript引入线程技术": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4763b1d0eeaf4a28b5e2b7764b542311" } }, { "嵌入式Worker代码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3a94900cd8fb400c9ea91fded72131ca" } }, { "共享Worker": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e023b9297bc9406d99d158331ab57f75" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/7.\351\200\232\344\277\241\345\237\272\347\241\200/config.json" "b/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/7.\351\200\232\344\277\241\345\237\272\347\241\200/config.json" index e91aa8a2b3b19f2c51299182f0e43ab2b670b987..b30ca8845bd061170ad223766f15173bfa2ba055 100644 --- "a/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/7.\351\200\232\344\277\241\345\237\272\347\241\200/config.json" +++ "b/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/7.\351\200\232\344\277\241\345\237\272\347\241\200/config.json" @@ -1,25 +1,36 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-ff9696dba38746b692ddb5c49a98c453", "keywords": [], "children": [ { "XHR 2": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f06df4f546fc47bca445020363691b43" } }, { "跨文档通信(Cross-document messaging)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e5df37469df243d8936ff460e06c315a" } }, { "通道通信(channel messaging)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-02f7bfbcef124aac9fa8441cfbc526bf" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/8.\345\256\236\346\227\266Web\346\212\200\346\234\257/config.json" "b/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/8.\345\256\236\346\227\266Web\346\212\200\346\234\257/config.json" index 1a6f0659d92b3f2fdc5cd8d3f123f2c0b1c9322e..c46acf248428cf7e137e5e1575a3c79c246338f8 100644 --- "a/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/8.\345\256\236\346\227\266Web\346\212\200\346\234\257/config.json" +++ "b/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/8.\345\256\236\346\227\266Web\346\212\200\346\234\257/config.json" @@ -1,37 +1,54 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-abbe27bb93434c99a87dba1187cf2a38", "keywords": [], "children": [ { "轮询和长轮询(comet)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-00c7d234af4a4824b83d4d0a18df532c" } }, { "服务器事件(server-sent events)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d3e256cb66684fb2b33eb6b0db180a4f" } }, { "Web Sockets": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9dd214642836442887bc02aa4f2aa2d9" } }, { "利器:Socket.IO": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-41ea0690b646420db2b53673ec796536" } }, { "基于Socket.IO的聊天室": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7eb7feb400b048338e0245fbfbc84c6b" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/9.\346\204\237\345\256\230\344\270\226\347\225\214/config.json" "b/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/9.\346\204\237\345\256\230\344\270\226\347\225\214/config.json" index baca927308f7614724b0e1595ead83dc9b3d30dc..b2383b5202d0bbb1dc1e79fc5fcf4101a1fda688 100644 --- "a/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/9.\346\204\237\345\256\230\344\270\226\347\225\214/config.json" +++ "b/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/9.\346\204\237\345\256\230\344\270\226\347\225\214/config.json" @@ -1,19 +1,27 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-9f54b2c6799f41c0a3f4bf152bcc35d8", "keywords": [], "children": [ { "感知方向(orientation)和动作(motion)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-22e14d467c4e4d668ef76d58a3d97bf3" } }, { "音视频捕获": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-62f0bbdc096a4668bd8d1b73322c359f" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/config.json" "b/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/config.json" index 3407cf95a3919655576413ce3c70fe407e0719d7..62cd5eeaa7b28da574cf4dd2911290ac05a82d8d 100644 --- "a/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/config.json" +++ "b/data/1.web\345\210\235\351\230\266/9.\347\247\273\345\212\250web\345\274\200\345\217\221/config.json" @@ -1,4 +1,6 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [] + "node_id": "web-8f89ff21d739431499e2868ad9f0da17", + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.web\345\210\235\351\230\266/config.json" "b/data/1.web\345\210\235\351\230\266/config.json" index 3407cf95a3919655576413ce3c70fe407e0719d7..a5e51c1e221c636405bc586afbd9ed5a59f3c5fb 100644 --- "a/data/1.web\345\210\235\351\230\266/config.json" +++ "b/data/1.web\345\210\235\351\230\266/config.json" @@ -1,4 +1,6 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [] + "node_id": "web-d40e28fa9cd746f3803a9ea76f093fe3", + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/1.\345\211\215\347\253\257UI\345\272\223/1.bootstrap/config.json" "b/data/2.web\344\270\255\351\230\266/1.\345\211\215\347\253\257UI\345\272\223/1.bootstrap/config.json" index 67b9b4fef698080ea0addd36b9686801e35144e4..8dae8bd761a41848c5ab5ca1325c19d2b0b24b5c 100644 --- "a/data/2.web\344\270\255\351\230\266/1.\345\211\215\347\253\257UI\345\272\223/1.bootstrap/config.json" +++ "b/data/2.web\344\270\255\351\230\266/1.\345\211\215\347\253\257UI\345\272\223/1.bootstrap/config.json" @@ -1,11 +1,14 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-20238c06ae2c456c8d4068b4049e22e1", "keywords": [], "children": [ { "下载安装Bootstrap": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3a8671c255994e9dbb47e33b1429f878" } }, { @@ -15,13 +18,19 @@ { "设计中的网格": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f622bde32481488fa054289709ff2bd8" } }, { "Bootstrap网格系统": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ae42d5e2dba8434abf563d4509444d43" } }, { @@ -31,31 +40,49 @@ { "创建基本网格": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fd1b5cbcad9c4fc9bf9423b421eff7bb" } }, { "响应式列重置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4b4c3e016be3499ba5a2f63b03d7fa5b" } }, { "列的偏移、排序和嵌套": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-31aad9a47c0848fb9abd01ad35788128" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-82a3d5fa47404ad59b6e321568a36216" } }, { "Bootstrap中的响应式Web": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f4e4653239814ea28cfaefade732920d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4e83d721bfe743afbe0bef148d8f0177" } }, { @@ -69,16 +96,25 @@ { "标签": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-20219ccfb9a34ed39762f146b1009ece" } }, { "徽章": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a3fe832d973342dc8e6c211140df4567" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ed210cbe3a1d4d559f15a378665c6f79" } }, { @@ -88,25 +124,40 @@ { "Well": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-30c60104051e4077a30fb7a3fb223ade" } }, { "面板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1d3f08f70f434477bcafd8332b811507" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f0557bb748d94d7886792fc0681b7ab9" } }, { "超大屏幕": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-77d9b4f99acf41f2a2d40c77c9772167" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-037d7473994748d4b43e5f70574e2cc1" } }, { @@ -116,7 +167,10 @@ { "Bootstrap中的基本排版": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1eed865fc2cf45a790a0a5ba58bd9ebe" } }, { @@ -126,16 +180,25 @@ { "标题": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4d9de00eba8348dd8ad16e75e2381387" } }, { "页眉": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-42496c25040d493c83e50b444ce14f73" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2b0f155be07b41c2a8632a5b5298196f" } }, { @@ -145,22 +208,34 @@ { "内联文本": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b50451fd9e2346209b427e55f10beef4" } }, { "元素对齐": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-61105d35940a47de914f9ba8c16d7305" } }, { "文本元素转换": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c8f522569f7448eabe3680073aa84708" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4c379a9e130f4d96a5b90629b497e290" } }, { @@ -170,37 +245,58 @@ { "代码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1e669bdc220b437fbcaf1a8389eea11a" } }, { "引用语": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-451c518b27ad4ed8a6086ac964a75e29" } }, { "列表": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4acdf4729a144d2184755c6e8d26219d" } }, { "缩略语": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f6a8b8ec87fa43708df71e403b4e1484" } }, { "地址": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ce03226eba074cfd85415ce07ee2faae" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b30f9c4edc0f43eeb55e53e503a7ce65" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8ef1e43af5174641b8edb089a77f0580" } }, { @@ -210,28 +306,43 @@ { "基本表格": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-466c484d51a04e88987b2362724c14f9" } }, { "Bootstrap表格类": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5001ba76e1b44afb85bb14b6bc14e4e2" } }, { "包含表格的面板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-df986a2f7f054b3dad58496fce1f27cc" } }, { "响应式表格": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c85fd71445d643be930346b5417c8e71" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7f6f171e8f054fcc84a903f090a45200" } }, { @@ -245,16 +356,25 @@ { "水平表单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dc1009a5b28749fcbc5c0a5cfc473c88" } }, { "内联表单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6f7de1d27d664ba4a6c5a6799ef7b91d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-22cc7ff7de9045a1b0cb424a6a66a930" } }, { @@ -264,34 +384,52 @@ { "基本输入标记": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-658c316b403348e48f7d2d45f0fc11f9" } }, { "复选框和单选按钮": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bd1aeaccd9424e7387b5036cbe1e3e1b" } }, { "下拉菜单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-08f8e2d2a9b549c8969350cb4e5226b0" } }, { "设置表单控件的大小": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d988ff06e19a4a70ad4fe72dda2e927f" } }, { "帮助块": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b63145933b1b46e48b15b29636c9ba71" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f1592c20b1214d8f88408a4120ac1ffd" } }, { @@ -301,22 +439,34 @@ { "基本输入组": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dbe1678a9be44eb9b02ec9e67b01b82e" } }, { "设置输入组的大小": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-70ef03c70dd243fea30130af908130bf" } }, { "奇妙的附加控件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-60a69d62c21d4f25bd356821ed77ec14" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6ced3c665f5345ba86672cbb4349aa41" } }, { @@ -326,25 +476,40 @@ { "焦点状态": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e1785b9a6d254cb28419f29ef40edd83" } }, { "禁用和只读状态": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-959b5573c11b49848704c7c0dc8374b8" } }, { "验证状态": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-23d4c3a7aa6c487aab9957ae0e30f1c5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-14076182cd074a679f935f2151aec08d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-530f67bc25c24d9197ba86ab12aa70c5" } }, { @@ -354,34 +519,52 @@ { "响应式图像": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cc95fe54fbb84e97bfecd8a76f0bf0e6" } }, { "图像形状": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-982ab0f99778457d8f126af4b678da6a" } }, { "媒体对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6ac1172fb5ea400c942bbfaa03d07574" } }, { "缩略图": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e38820d9435949e39ad7e827f2254e8a" } }, { "Glyphicon": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0d74b60422df4e4a8bb7931aaf58af8f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-76b46d74dbc2481ca633bb478af4b71e" } }, { @@ -391,19 +574,28 @@ { "按钮标记": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-da0669eae37944a1b294dcffc3f402ea" } }, { "按钮类和大小": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fdf124d444744abe8cfd0f97b735f5a6" } }, { "按钮状态": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cfd83f4134a549a588be9e2ce7a34525" } }, { @@ -413,31 +605,49 @@ { "水平按钮组": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c0171b6f04a847119af10a95b0fdf089" } }, { "垂直按钮组": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6cdbb4f06b1c47db866cdd7187ea6ab3" } }, { "按钮工具栏": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-999a8fbd4a674a00a004f08e57d541b8" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-db3d03e40a174ced8c7934f15f2f25ec" } }, { "按钮JavaScript": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-97186260be5642b2add792ac175b9c56" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-74ad440f580641db8b82205d3e315e46" } }, { @@ -447,7 +657,10 @@ { "标准导航元素": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-291bb439c5134c76a336d6b359018910" } }, { @@ -457,16 +670,25 @@ { "拆分下拉菜单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6868fe8251f244b99e5f77418f9d49b0" } }, { "上拉式变种": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2f66e767909c4c6196b79297ee3fd189" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fd4e9789080041559a73d67e92d83fb3" } }, { @@ -476,43 +698,67 @@ { "导航栏标题和品牌": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1b17f625047846c2af292fc9589d41b7" } }, { "切换导航开关": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fa84b9c2bb3d4cf68fa99240cde2e739" } }, { "导航栏中的链接、文本、按钮": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-61a7c9ba2be44f838f4c4964d26fca22" } }, { "改变导航栏的颜色和对齐": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a6978c0161e64f6aa85f56ced219f9e8" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2cf6d8f55646428fa5c4208ba7461f13" } }, { "面包屑导航和分页": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1c441620fe2d4220a74e8975ce143036" } }, { "列表组": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-32896143867d413983843df9d8a577c1" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-609066189783438394384f497031cc6b" } }, { @@ -526,55 +772,85 @@ { "更改颜色": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ecc73354ac0a44f1b9183e96ff9eddc7" } }, { "图标": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c86288e0b5ae45a1b08db913c63fb0b1" } }, { "布局类": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f4d0149a053c4e25ad82dec7e502bbe6" } }, { "显示和隐藏内容": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-164393b05a114e819d01578585176e77" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-53b52ec610714daa85aab8e266fdbeff" } }, { "响应式实用工具": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6214d71377f44a79ad01bcf826c3b9fb" } }, { "打印类": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a7db695345df46e9992762ff5f094947" } }, { "响应式嵌入": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a798f6099cdd4e1696ef3a41adb5c38d" } }, { "Bootstrap中的可访问性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-56aff4cf0c134f3c8486b63c7d3244df" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a0a04b687544486d821bbe8758689f74" } }, { @@ -584,7 +860,10 @@ { "什么是模态窗口": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ea7c1345a56a4f7b9e9115fe3e6e420c" } }, { @@ -594,16 +873,25 @@ { "触发模态窗口": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8ca9a165a8cb414f944c4ee25238128a" } }, { "模态窗口编码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-71541aeee34f40c983fa8a97fe117e95" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6d0a2fccadab41f890ae47e3d18d00b3" } }, { @@ -613,31 +901,49 @@ { "更改模态窗口的打开": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ca95796d6dc445d980f015d25d2653ab" } }, { "更改模态窗口的大小": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a199ed54a5fb4e4d813e36ff3d6f7d9b" } }, { "更改布局": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b4992dacbfa44175be9a894472d7ef21" } }, { "动态更改模态内容": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ece23ef6207d4a8ea4153f48a1181226" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1dcdc5422c344e67b51b2b0d353bc4f7" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-29621c19078d49b0897cb2ed2129cb61" } }, { @@ -647,28 +953,43 @@ { "附加导航": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0a8d815cfc0c44a2afcb447a677b76c7" } }, { "选项卡": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-01ae3604b1fc475f956b67ace5b36278" } }, { "滚动监听": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4ec036ad1a3f43e9a42b877814d6ec2c" } }, { "结合使用这些插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9d01cc95a654481db257d447950b46f5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-811631ff645649bcbaf82871aa9a6810" } }, { @@ -682,22 +1003,34 @@ { "工具提示选项": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-222ac47434b44afca445461e3d771546" } }, { "工具提示方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3063b72760814cf1aed78e58ec99e8b1" } }, { "工具提示事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-71b9b8c349c74461b26df8e9e7b83c80" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d183904279494e8bb9f0de4d1b2e8f8e" } }, { @@ -707,25 +1040,40 @@ { "弹出框选项": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7f069594e6374a0fb841967e2b722cf6" } }, { "弹出框方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7f00f21885f74973afb7669c2132a9a9" } }, { "弹出框事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-68c3542c1fcf4977a8c6832d2210a5eb" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3d47794b18284934bcc26d58ed470ed5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8023f93e7cba4eae9335f9479bae8085" } }, { @@ -739,28 +1087,43 @@ { "按钮状态": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-56d527a9c24c42b498c29fdb6fdbc5d2" } }, { "切换按钮": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5d2979735e0b4e628d8750d124f6949b" } }, { "复选框和单选按钮": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e0612d1d9029413d9bb1cf3ed0b966a6" } }, { "按钮方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9078adefd6ac47e390d0f5a19bf57a4d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d3c3230ad78b4a3fbdda65b0f26bb46c" } }, { @@ -770,16 +1133,25 @@ { "警告框方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8c162eb041324df4a86e1916d67bfd8c" } }, { "警告框事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-58afacb7a3954ce7acdc8a02892310bd" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-66a23a6a602846b4bd7535bb979ca4dc" } }, { @@ -789,19 +1161,31 @@ { "创建进度条": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-58f2f9bb8f804488a48c1aa6b547c2dd" } }, { "设置进度条样式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2aad7bfe376e41008023d83cf1d1d371" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-60849e34a48b48a7bf68c25da97e21bd" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6318b053cfe94e30939f8a653526ecff" } }, { @@ -815,34 +1199,52 @@ { "创建一个可折叠部分": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3f9f4f939e0b48028a341ca5ca8d7fcd" } }, { "水平折叠元素": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d700a83c2a394b7d818c4731ac3738a6" } }, { "折叠选项": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-da50c00c51d7460d86f0583b2dc7f019" } }, { "折叠方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-51e465b2a56d4577bc1eac80999b81b3" } }, { "折叠事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-809f02e9b4b94984808b3825328a65ba" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7f021650b1e5465db7e8493c3e098d2c" } }, { @@ -852,19 +1254,31 @@ { "创建折叠面板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d1b86157acf64db3beb795e6d3f0c1ae" } }, { "使用折叠面板导航": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9e03292cbbf24336947f82d1451059ee" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1ed7315e4b39437b8a8c64e2acd6bf90" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5f9db3fc0f4d43dbb8eb0708f69d536c" } }, { @@ -878,16 +1292,25 @@ { "基本轮播": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dd080e0b170747a3b9904e9bc855e6eb" } }, { "更精致的轮播": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3cbcd938b1a6468fb0feee3e35b22940" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fca5d162b1364469a06a249ac1d6e459" } }, { @@ -897,28 +1320,43 @@ { "添加多个轮播": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-49aa925019e043ca90f70e5a8089ca6f" } }, { "轮播选项": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5b84b4e537714b718b8c4530900474c7" } }, { "轮播方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9785fb6786f84ead9b4df554541d8db9" } }, { "轮播事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-311071d0ee5b4524af698ac76fc3b53c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-79872766e6974e0292a6a24735046df7" } }, { @@ -928,21 +1366,35 @@ { "轮播最佳实践": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b4e8a871b5b149578d6139236e7b6872" } }, { "轮播的问题和解决方案": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-30ec4d4d12f849b282286cdd687bf996" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d0932c1821b84237babd32771af1c0af" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f2416820682647bea0f1b0380175be03" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/1.\345\211\215\347\253\257UI\345\272\223/2.layui.js/config.json" "b/data/2.web\344\270\255\351\230\266/1.\345\211\215\347\253\257UI\345\272\223/2.layui.js/config.json" index a3dc365f5dc5d8c8d84d8a42f41cdaa4de98afde..155690ef23700c9b9ea6d38db13a481462706d6b 100644 --- "a/data/2.web\344\270\255\351\230\266/1.\345\211\215\347\253\257UI\345\272\223/2.layui.js/config.json" +++ "b/data/2.web\344\270\255\351\230\266/1.\345\211\215\347\253\257UI\345\272\223/2.layui.js/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-a29f88f35c9f42c79b54121f2f70fc80", "keywords": [], "children": [ { @@ -9,94 +9,142 @@ { "布局": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a4363c95226b47b1b98eb62a2f6b3e99" } }, { "颜色": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2c548aa3d1be4ece954000c4ded356bd" } }, { "图标": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f694efb9838b4e95afa945a158983efb" } }, { "动画": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-894da9655d144baab4ddd5c1bf32b962" } }, { "按钮": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a323ab0242cf4027bbc02167787f9ead" } }, { "表单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a67117f76bd84d5388814ac2f27d38e0" } }, { "导航": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-05cca0c5082241a78aaa09b175295176" } }, { "菜单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a468e1d615b048bd8af0cfb9af5da74e" } }, { "选项卡": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-90ad0a30fd42494796928b84e8369353" } }, { "进度条": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3b96aa26ec314769ad8ed95d4fbb33c1" } }, { "面板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3834f1980d464dc08e140d53895c2add" } }, { "表格": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4ae0737380c04ffca57f9a3f58f9f36d" } }, { "徽章": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8f0e13abc41a49ffad30e9d9083ed5f8" } }, { "时间线": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-74f8a64db4864c8298520b47dd4e6308" } }, { "辅助": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e536aebd4aac485bbfdad350673fbf1c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9f52dffb09dd43f5ad444c70a6d00f29" } }, { @@ -106,114 +154,173 @@ { "弹出层": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-84796fffed2940d2af097cdb524a4d07" } }, { "日期与时间选择": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c1fb602b65324949bfadb4de22b1ded0" } }, { "分页": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-36e5b834e1824524b210ad2b446e0e8e" } }, { "模板引擎": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-73b66b5014ba4f5d8acd02bdecb3a670" } }, { "数据表格": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f45c0cff7546474ba32f3e4071a80acf" } }, { "表单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e679e7e3f8cc4b33ba43f0a775dd0ee9" } }, { "文件上传": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8f56b35293544a6a937c9fe848998db0" } }, { "下拉菜单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-06f060a5042a463f8e0cc0faa6b578ea" } }, { "穿梭框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-69076b26c85246199fe7ee1b554ba8bf" } }, { "树形组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-435b014e639046e7a43b54aa6470fdb8" } }, { "颜色选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-108bdfc59d3342c48a5c999ea6973e99" } }, { "常用元素操作": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-02c440dd4996471ea1fc495a4de791f3" } }, { "滑块": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ba8b520f5392413381ad5238147c3b39" } }, { "评分": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-571aa5ef9f6d4d2089e5dc157cd96838" } }, { "轮播": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-94db905bd8dd44acb3180b4442d4993f" } }, { "流加载": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ebcc53a5658947af8ff1f88b470789c8" } }, { "工具组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6e6c4fca905f4a8ab50318f960250fc2" } }, { "代码高亮显示": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b03e5f3897e74ccebaf40d45793a0fb1" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-99e3d238279c4df8afe660a924f8dd97" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/1.\345\211\215\347\253\257UI\345\272\223/3.iView/config.json" "b/data/2.web\344\270\255\351\230\266/1.\345\211\215\347\253\257UI\345\272\223/3.iView/config.json" index f0a1d1ee312b53991703cbaccea1c66e707aa57f..af90cd23c44c7ecaab203213aea92089a57a4679 100644 --- "a/data/2.web\344\270\255\351\230\266/1.\345\211\215\347\253\257UI\345\272\223/3.iView/config.json" +++ "b/data/2.web\344\270\255\351\230\266/1.\345\211\215\347\253\257UI\345\272\223/3.iView/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-484759f760dc4f03b833b9c8e336c130", "keywords": [], "children": [ { @@ -9,28 +9,43 @@ { "olor色彩": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7ae190e9ae0743cf84cc81ec8048e88a" } }, { "Font字体": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6d3d1b908dd14102a52ee0ae1f852524" } }, { "Button按钮": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a534a389e6eb426d8823b19c379ef9ff" } }, { "Icon图标": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4fde5f85fb5149ddb4533ee8de2b0629" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4b7cd7cef05e4b84b22a24647bee6e21" } }, { @@ -40,102 +55,155 @@ { "Grid栅格": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-055e7cd57f254fce81f115163e463dd3" } }, { "Layout布局": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-df9d052efda446adb6a9ccc142e8a73f" } }, { "Card卡片": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a07e902d57634e01adc0413f35ddb4d8" } }, { "Collapse折叠面板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aeb080eaf7da4830927a9ad1264fc245" } }, { "Split面板分割": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8a301840175b4f03964ab718ccf2829e" } }, { "Divider分割线": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ff89f689e8284c3986217681d9337a10" } }, { "Cell单元格": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ff8301c1172b45469f776666a768a5d1" } }, { "Menu导航菜单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-829ffb40d18b4d0facf9de7559e7f9c5" } }, { "Tabs标签页": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-788213e963214d3bb2b93cbbcd381fbb" } }, { "Dropdown下拉菜单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d4b285b02bd84ba28217e6a84add3311" } }, { "Page分页": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3d6d6594f0c6421e911d0a0fd474cd07" } }, { "Breadcrumb面包屑": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-68ac756a718d4658908ebec21d09ea64" } }, { "Badge徽标数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2134d9a84b344bc2a2b995abed6559e9" } }, { "Anchor锚点": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b5c8bfc2e0e546e9914a933127952059" } }, { "Steps步骤条": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-76a80961da8345579d25909fa7fb9b33" } }, { "LoadingBar加载进度条": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2cc945c3c52b434dac04625a96968668" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c64b4903607d4281bab5d97ed384ffd9" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/1.\345\211\215\347\253\257UI\345\272\223/4.element-ui/config.json" "b/data/2.web\344\270\255\351\230\266/1.\345\211\215\347\253\257UI\345\272\223/4.element-ui/config.json" index 7e1ff0cd7e8a30fbcda15a4e8c4de2a1e11c0b07..effbfcc3efd1a5f686c3b29b8320e328828b9018 100644 --- "a/data/2.web\344\270\255\351\230\266/1.\345\211\215\347\253\257UI\345\272\223/4.element-ui/config.json" +++ "b/data/2.web\344\270\255\351\230\266/1.\345\211\215\347\253\257UI\345\272\223/4.element-ui/config.json" @@ -1,271 +1,405 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-44b9f1c5650943cfb9f8d2c31bfe9c5d", "keywords": [], "children": [ { "Layout 布局": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bcc299c1fb9648849db2cd4410fcd495" } }, { "Container 布局容器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c9633862f3ea480bac9d7258561a868b" } }, { "Color 色彩": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-160fab85f17a4e5a82a2f6867c73107b" } }, { "Typography 字体": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e3f719a59ea54a4ebbc07f3043e34f66" } }, { "Icon 图标": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e2d31c6dfc234d5491dc524bec66acdf" } }, { "Button 按钮": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a65d870057864e059b7835ff70c25734" } }, { "Radio 单选框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-056fa14e2e5247dca1ead37f623320f1" } }, { "Checkbox 多选框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b1bc3b1885b546298445a59995bcad49" } }, { "Input 输入框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6955d0184f49446f8fd800f20260eef9" } }, { "InputNumber 计数器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b109092b60be4339846afb28c2afa423" } }, { "Select 选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-315781cdbf744bb398d26e40495280df" } }, { "Cascader 级联选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fd59fc54246644179e048accabe0c0b8" } }, { "Switch 开关": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-58e126544a3943bb8e1208adcb24cef8" } }, { "Slider 滑块": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2183d353ae6b4d8f9907d5312af21ea6" } }, { "TimePicker 时间选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-676a5cb591884b9fb27781451acc1719" } }, { "DatePicker 日期选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f5e0e792d60b44a0a6d57ac2e30578e1" } }, { "DateTimePicker 日期时间选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cbd0f1fc909e40a9aac49bb23cfd862c" } }, { "Upload 上传": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f60ee0de333841ecb48fd928dfb4b85f" } }, { "Rate 评分": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-79ec2a1bfc214e2286cc24ab1cbf22f0" } }, { "ColorPicker 颜色选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f048ae4866ef4ee9971b1b0b992708c8" } }, { "Transfer 穿梭框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cb28c44680c3449caf2defeeb7da2566" } }, { "Form 表单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1fcbe71db4d7487fae4e4941784c7a6b" } }, { "Table 表格": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2ab7ec11d7774e32a3764e0449d09ab3" } }, { "Tag 标签": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dcbf6a7772624dbeb6f6235c50367cf6" } }, { "Progress 进度条": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9e1dcb7770b94e9b85f882e17f0f9a34" } }, { "Tree 树形控件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-17d09027f4d44c0dbf35d366085c48d7" } }, { "Pagination 分页": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-59b9ac67092f4f87b774107dd861ed15" } }, { "Badge 标记": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-45753755bb6343ea87bc87f10b8382b6" } }, { "Alert 警告": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-73e3ac4cac6447f5aa510412aace995e" } }, { "Loading 加载": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e9f0c22da1384f3897783f69a7e3ee29" } }, { "Message 消息提示": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-99bb9c2260a2435ca764c29649217473" } }, { "MessageBox 弹框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-db71576368f64ed197ae878c2c9f2609" } }, { "Notification 通知": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d966bb17db3849e9a1035b03e7cb84b3" } }, { "NavMenu 导航菜单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-635dedc9c1cd4244b45b7de854e44522" } }, { "Tabs 标签页": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7472ede4b5244e508ff952692b7bccc5" } }, { "Breadcrumb 面包屑": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4236619ccf23474c840dde0c72c2ecc0" } }, { "Dropdown 下拉菜单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4708c98182f94d458593285a40380c5c" } }, { "Steps 步骤条": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2fb68f8f65994b59b390358f17ef1aa4" } }, { "Dialog 对话框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-40de5c27bee14b2181624ae51de78f63" } }, { "Tooltip 文字提示": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-34410d7d826d4264871d175e5e8cb593" } }, { "Popover 弹出框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-20cf2d9731514961817868f3968b2820" } }, { "Card 卡片": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-019a391b40b443df8eca3c60c04b8f73" } }, { "Carousel 走马灯": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d28be09f0d584a1aaa10394b1f626db7" } }, { "Collapse 折叠面板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3c6bceb1ff5f4bc3b19985ca2f071c34" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/1.\345\211\215\347\253\257UI\345\272\223/config.json" "b/data/2.web\344\270\255\351\230\266/1.\345\211\215\347\253\257UI\345\272\223/config.json" index 3407cf95a3919655576413ce3c70fe407e0719d7..95960ba7c8ffffda2ba55c73d49d4ee78ff6b644 100644 --- "a/data/2.web\344\270\255\351\230\266/1.\345\211\215\347\253\257UI\345\272\223/config.json" +++ "b/data/2.web\344\270\255\351\230\266/1.\345\211\215\347\253\257UI\345\272\223/config.json" @@ -1,4 +1,6 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [] + "node_id": "web-5ee4c7e68d30491f9c1e2afc3241d463", + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/2.\346\225\260\346\215\256\345\217\257\350\247\206\345\214\226/1.\346\212\200\346\234\257\346\240\207\345\207\206/config.json" "b/data/2.web\344\270\255\351\230\266/2.\346\225\260\346\215\256\345\217\257\350\247\206\345\214\226/1.\346\212\200\346\234\257\346\240\207\345\207\206/config.json" index 01d1bfff8edc4c954d6f64a0ae20ac7553c20585..fb6bc40e71272034b4ec13593a41a42f2976c73f 100644 --- "a/data/2.web\344\270\255\351\230\266/2.\346\225\260\346\215\256\345\217\257\350\247\206\345\214\226/1.\346\212\200\346\234\257\346\240\207\345\207\206/config.json" +++ "b/data/2.web\344\270\255\351\230\266/2.\346\225\260\346\215\256\345\217\257\350\247\206\345\214\226/1.\346\212\200\346\234\257\346\240\207\345\207\206/config.json" @@ -1,37 +1,54 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-aa72054f02d042feb13750e9b6e5bf3f", "keywords": [], "children": [ { "Canvas": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1ac442fe5765432d9b7f59904484d6f1" } }, { "SVG": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6958e0229fb6441f93f9d9b3cde457f2" } }, { "WebGL/2": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-979b16b3b8d24c639353510eb70c0a65" } }, { "WebGPU": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a658b58b41b9455893e8519b61990510" } }, { "OpenGL": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6435386b3733445c8333d9628492c0e1" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/2.\346\225\260\346\215\256\345\217\257\350\247\206\345\214\226/2.\346\225\260\347\220\206\347\273\237\350\256\241/config.json" "b/data/2.web\344\270\255\351\230\266/2.\346\225\260\346\215\256\345\217\257\350\247\206\345\214\226/2.\346\225\260\347\220\206\347\273\237\350\256\241/config.json" index 831fd40ce73c450911707e770a41385bc87062a2..a93ce5f8d3e17d3e2790da4b0b07cb3d41c9fd55 100644 --- "a/data/2.web\344\270\255\351\230\266/2.\346\225\260\346\215\256\345\217\257\350\247\206\345\214\226/2.\346\225\260\347\220\206\347\273\237\350\256\241/config.json" +++ "b/data/2.web\344\270\255\351\230\266/2.\346\225\260\346\215\256\345\217\257\350\247\206\345\214\226/2.\346\225\260\347\220\206\347\273\237\350\256\241/config.json" @@ -1,31 +1,45 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-2093bba6e20c485d98024006efd47737", "keywords": [], "children": [ { "统计学": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-89a94486f97d4c28a16c45dd73ea68bc" } }, { "平面几何": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-49714c99618d4cb1bb4f28c6cd9952ee" } }, { "线性代数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8012e6ef14314d6eabd997311899f06f" } }, { "离散数学": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3a8f3ad7984943b5871d5190d3db9368" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/2.\346\225\260\346\215\256\345\217\257\350\247\206\345\214\226/3.\345\233\276\345\275\242\347\276\216\345\255\246/config.json" "b/data/2.web\344\270\255\351\230\266/2.\346\225\260\346\215\256\345\217\257\350\247\206\345\214\226/3.\345\233\276\345\275\242\347\276\216\345\255\246/config.json" index 386e31b0eb4753ffdf443232f46e15689794675b..b665ba8044a61982c8c5513c5d756c1c4c54fa2d 100644 --- "a/data/2.web\344\270\255\351\230\266/2.\346\225\260\346\215\256\345\217\257\350\247\206\345\214\226/3.\345\233\276\345\275\242\347\276\216\345\255\246/config.json" +++ "b/data/2.web\344\270\255\351\230\266/2.\346\225\260\346\215\256\345\217\257\350\247\206\345\214\226/3.\345\233\276\345\275\242\347\276\216\345\255\246/config.json" @@ -1,31 +1,45 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-eba5ba50df664a77adc49ee6bf973f04", "keywords": [], "children": [ { "色彩": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d45e5371178f445a8d5c8d25d1104518" } }, { "图形": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6bd8ea3334244d4f86d5863310a8384f" } }, { "动画": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4685e814e4bb46c3ac0a9170e3711dd9" } }, { "格式塔理论": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c5aae34f03dd4dc89ff250b9ac836486" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/2.\346\225\260\346\215\256\345\217\257\350\247\206\345\214\226/4.\345\217\257\350\247\206\345\214\226\345\237\272\347\241\200\346\246\202\345\277\265/config.json" "b/data/2.web\344\270\255\351\230\266/2.\346\225\260\346\215\256\345\217\257\350\247\206\345\214\226/4.\345\217\257\350\247\206\345\214\226\345\237\272\347\241\200\346\246\202\345\277\265/config.json" index 7be4a51c926fcb78648d6d594dec20950ae80513..4810b89efa375faffa0bfec41f5edbc9633b6671 100644 --- "a/data/2.web\344\270\255\351\230\266/2.\346\225\260\346\215\256\345\217\257\350\247\206\345\214\226/4.\345\217\257\350\247\206\345\214\226\345\237\272\347\241\200\346\246\202\345\277\265/config.json" +++ "b/data/2.web\344\270\255\351\230\266/2.\346\225\260\346\215\256\345\217\257\350\247\206\345\214\226/4.\345\217\257\350\247\206\345\214\226\345\237\272\347\241\200\346\246\202\345\277\265/config.json" @@ -1,35 +1,50 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-fa84243817ce443c80efbd392ac6e977", "keywords": [], "children": [ { "数据类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3c55623e619a4b2da00b4d089e3fa82a" } }, { "视觉通道与映射": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1a1e82e21674443783b6699dbef235ad" } }, { "信息密度": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-70b0fdd4ed5e424fa786bcfe1da0534d" } }, { "可视化隐喻": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-14fc728d15ba4574b304e96b10b45e5e" } }, { "图形符号学与图形语法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4643ee1b278a458090fc748138b42629" } }, { @@ -39,52 +54,79 @@ { "折线图": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9dd41b672a044a55bc83c1f673f3d027" } }, { "柱形图(条形图)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a683eab4434949dd90650206585a8c24" } }, { "饼状图(环型图)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4cc09d7c8ab54ed2b2ebfc8d2155f572" } }, { "散点图(气泡图)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b795aadba025404a97647616bc5126a5" } }, { "雷达图": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bf2f187e508743caa2393ddccee5f628" } }, { "地图": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f790cbd34329468cb064dc3a7cc29398" } }, { "多维表格": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-21cdd2cbf34041eaa89eb4bcfba73280" } }, { "其他": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7e621f42cf90492fae052b5cc3d0092b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c76cd35ae9374b35a4f4982322f03097" } }, { @@ -94,18 +136,29 @@ { "2D": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0d9fef0f142543ebae514488c3bb9d84" } }, { "3D": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-190e484909214efa91fb70c45981fd9e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7d13e7fa22e0492eb699ef1cc1e92796" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/2.\346\225\260\346\215\256\345\217\257\350\247\206\345\214\226/5.\345\233\276\350\241\250\347\261\273\345\272\223&\345\217\257\350\247\206\345\214\226\346\241\206\346\236\266/config.json" "b/data/2.web\344\270\255\351\230\266/2.\346\225\260\346\215\256\345\217\257\350\247\206\345\214\226/5.\345\233\276\350\241\250\347\261\273\345\272\223&\345\217\257\350\247\206\345\214\226\346\241\206\346\236\266/config.json" index 7056672ab57ef988151627586c6b854432657fe6..d47798ec9182bb386a016bbfc7c8d4eec5499c3b 100644 --- "a/data/2.web\344\270\255\351\230\266/2.\346\225\260\346\215\256\345\217\257\350\247\206\345\214\226/5.\345\233\276\350\241\250\347\261\273\345\272\223&\345\217\257\350\247\206\345\214\226\346\241\206\346\236\266/config.json" +++ "b/data/2.web\344\270\255\351\230\266/2.\346\225\260\346\215\256\345\217\257\350\247\206\345\214\226/5.\345\233\276\350\241\250\347\261\273\345\272\223&\345\217\257\350\247\206\345\214\226\346\241\206\346\236\266/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-37dd662648734a5fbe0c4cf13e952617", "keywords": [], "children": [ { @@ -9,22 +9,34 @@ { "D3": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e0c13a35c5a241db864b2f3a01886db2" } }, { "G2": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-38a61ca86905445c97577ffc314e7b55" } }, { "Vega": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e1c6e3d359b146ea8ed6f9e832ccd797" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ccc9c1c5079b4777b10e696122ef02ee" } }, { @@ -34,22 +46,34 @@ { "Chartjs": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c1c982c10377414bb3c3e08dffddc86c" } }, { "ECharts": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6ac14a20bed044ec853ca29d537b3e62" } }, { "Highcharts": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1536ff5c9d004a808d85fee714db72f4" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9c5a1e0e823640fdbc8130b0193b46c8" } }, { @@ -59,34 +83,52 @@ { "Cytoscape": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-afc95812140e4825a011396edc7f6cb9" } }, { "G6": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-730b02d05b114c65a1c1e584cc06ef44" } }, { "mxGraph": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6528e7f126464436bab580369b2d4492" } }, { "Sigma.js": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f04b6099744645839c5b04435f5ce37b" } }, { "X6": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-57c916338bb644b086673a968860fd68" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-da8a377d357b4b2a83b57dcf9fec8a37" } }, { @@ -96,30 +138,47 @@ { "Leaflet": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a023ef4757f543d7969646dc42eeba05" } }, { "L7": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7bc65989a03745f388e48593c4c5b31a" } }, { "Mapbox": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1672e35d9e44400298a0d227ffda28c9" } }, { "PolyMaps": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-66f845ae553d432ab9ddba3f15768ea1" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f320a2a9d9e24d19824f78c314829ef3" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/2.\346\225\260\346\215\256\345\217\257\350\247\206\345\214\226/6.\351\242\206\345\237\237\346\226\271\346\241\210/config.json" "b/data/2.web\344\270\255\351\230\266/2.\346\225\260\346\215\256\345\217\257\350\247\206\345\214\226/6.\351\242\206\345\237\237\346\226\271\346\241\210/config.json" index 25c5f3a657bfa174df1fa168171f2f084891ded0..5c5d584b0f2485b08c8e66648c708d6ef7948562 100644 --- "a/data/2.web\344\270\255\351\230\266/2.\346\225\260\346\215\256\345\217\257\350\247\206\345\214\226/6.\351\242\206\345\237\237\346\226\271\346\241\210/config.json" +++ "b/data/2.web\344\270\255\351\230\266/2.\346\225\260\346\215\256\345\217\257\350\247\206\345\214\226/6.\351\242\206\345\237\237\346\226\271\346\241\210/config.json" @@ -1,31 +1,45 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-c27bc4f23d0b474f848583c21dc8ea3f", "keywords": [], "children": [ { "监控可视化": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2233b85a9af945c1ad7cdd0172281961" } }, { "关系可视分析": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0e32c0767a534cd99490a3cde4e14d12" } }, { "金融数据可视化": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0a9971b8543443a0a4f5ac6840db50f1" } }, { "商业智能可视化": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5a0a5a87fcd74193a06716028d76d400" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/2.\346\225\260\346\215\256\345\217\257\350\247\206\345\214\226/config.json" "b/data/2.web\344\270\255\351\230\266/2.\346\225\260\346\215\256\345\217\257\350\247\206\345\214\226/config.json" index 3407cf95a3919655576413ce3c70fe407e0719d7..32575925da3576d44c5ef6a5e7f7dd9f2d7dbd6f 100644 --- "a/data/2.web\344\270\255\351\230\266/2.\346\225\260\346\215\256\345\217\257\350\247\206\345\214\226/config.json" +++ "b/data/2.web\344\270\255\351\230\266/2.\346\225\260\346\215\256\345\217\257\350\247\206\345\214\226/config.json" @@ -1,4 +1,6 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [] + "node_id": "web-2b07d78b3b114d898370f53a04b1cab5", + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/3.js\346\213\223\345\261\225/1.es6/config.json" "b/data/2.web\344\270\255\351\230\266/3.js\346\213\223\345\261\225/1.es6/config.json" index 5a186b0c168aaffd4b01a72361f75251654e77e1..ce918fedcc0faca14c61ddd49cc3ac16a877e77e 100644 --- "a/data/2.web\344\270\255\351\230\266/3.js\346\213\223\345\261\225/1.es6/config.json" +++ "b/data/2.web\344\270\255\351\230\266/3.js\346\213\223\345\261\225/1.es6/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-86d440884f5f47f39a45d82e392c21e5", "keywords": [], "children": [ { @@ -9,28 +9,43 @@ { "ES背景": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aceb03ee0e994c82bf7c71e05b629a4a" } }, { "ES历史": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-956c4e9f5d6c4c7eb33401e25a633ac1" } }, { "目标与愿景": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f51cb4c273314401a4dbf92234ac9941" } }, { "环境搭建": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-256e7258764b46fcbfefda21fe7f0e2b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-081f8e5d8b444a3398d287fb15814460" } }, { @@ -40,22 +55,34 @@ { "let与const": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-140d26a580334110a1e7f8a8fddb45f5" } }, { "解析赋值": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-047d6e3681ce4d9683453d4beb040869" } }, { "Symbol": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-79ea67b53918486b80e245dd08595477" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8876e6d057834d19b7abd93becbdf6e3" } }, { @@ -65,40 +92,61 @@ { "Map与Set": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6defcdd1d34d4bcca04152838858991b" } }, { "Proxy与Reflect": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2398a47c2fc245caacce49bd35d79de4" } }, { "字符串": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fb21b66eb489408e82ab1e85e75cbc98" } }, { "数值": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ee455bce68ea4ac69bfb208be486fb83" } }, { "对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f441f600a9984d1fa8616ef9a3b763a5" } }, { "数组": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5029160f879b4019ae4a88cb9fefa14c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-61f3ccc7fbe74f8bad2b0fccf2c440c9" } }, { @@ -112,16 +160,25 @@ { "函数的扩展": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8d00975c4b7b4aa38cedbcdb46144128" } }, { "箭头函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8511bed50efa4d3baaad0cd8045f8982" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-54128ef79054497a97960a5a313c5adf" } }, { @@ -131,16 +188,25 @@ { "Iterator": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-31cb223380c9496abb774c1d6083cbd1" } }, { "for...of循环": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c906e888c864407ea8f05fafb6a3d467" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8d7f76c3b9de4891a087f7cf436853b0" } }, { @@ -150,28 +216,43 @@ { "概述": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-321a84e9433846709cd5d31f452fd33d" } }, { "基本用法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b8a22c4db826477f8eea7e77d212a320" } }, { "decorator": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-64f1e1619cbb4147b6e9162cd9ba916e" } }, { "继承与封装": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0dddfa449ed044bda54cf35d471b1933" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ef944a0633e04a40947e0f4f8204afad" } }, { @@ -181,22 +262,34 @@ { "特点": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1aabb5ba23d54c12b9408f3669841496" } }, { "export与import": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3c000726c5ec49f096f03d3025716871" } }, { "复合使用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-daa13fdb83404810a953973d11a071f2" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-651060fcad9f495ca15e1c0336753cb3" } }, { @@ -206,27 +299,44 @@ { "Promise对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-54eba6b3c6274faa9494296689790904" } }, { "Generator函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8011a0e0c9bb4e2d9d53d14f4a0f114f" } }, { "async函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-11badf5f5c8f4a0a8c57b19b5b510c64" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-44baaa46230544fe917d900545c55857" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5efd23eb8802443e890a21cc19a3d768" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/3.js\346\213\223\345\261\225/2.JS\347\274\226\350\257\221/config.json" "b/data/2.web\344\270\255\351\230\266/3.js\346\213\223\345\261\225/2.JS\347\274\226\350\257\221/config.json" index e80e2e1db8ed660101fe597f1584b2c1a5398658..c7b2d8bae8bb70546ef461ae426b7316c36d17d6 100644 --- "a/data/2.web\344\270\255\351\230\266/3.js\346\213\223\345\261\225/2.JS\347\274\226\350\257\221/config.json" +++ "b/data/2.web\344\270\255\351\230\266/3.js\346\213\223\345\261\225/2.JS\347\274\226\350\257\221/config.json" @@ -1,25 +1,36 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-9d06eff3f6864b69b821a73300546b46", "keywords": [], "children": [ { "babel": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-941b2185bb754ba0b68fc8fc31c3e2c3" } }, { "tsc": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2c0152ca1414461ea8fcb31bbeaa3d87" } }, { "esbuild": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2ab5b958385c49a98a7b2eb97370a167" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/3.js\346\213\223\345\261\225/3.JavaScirpt\345\274\225\346\223\216/config.json" "b/data/2.web\344\270\255\351\230\266/3.js\346\213\223\345\261\225/3.JavaScirpt\345\274\225\346\223\216/config.json" index 105483a963caa258ccaa41a015e89cc8144983b8..a74e7f11e3aa58b066765aff41cf9b0d8a90ed38 100644 --- "a/data/2.web\344\270\255\351\230\266/3.js\346\213\223\345\261\225/3.JavaScirpt\345\274\225\346\223\216/config.json" +++ "b/data/2.web\344\270\255\351\230\266/3.js\346\213\223\345\261\225/3.JavaScirpt\345\274\225\346\223\216/config.json" @@ -1,25 +1,36 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-d0a57ccf325b46e58c237d632a545a26", "keywords": [], "children": [ { "V8": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1571535d8e0d4c108e703baab0deac90" } }, { "SpiderMonkey": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fca93c73cabb4d76a1216970ff382dce" } }, { "JavaScriptCore": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4185630e92184cf0b6d24cac15aaa281" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/3.js\346\213\223\345\261\225/4.TypeScript/config.json" "b/data/2.web\344\270\255\351\230\266/3.js\346\213\223\345\261\225/4.TypeScript/config.json" index 4ca9f03eea90256359b02f442a89b3884a9837ff..43d2abbb6271668371c3d262f2741331d197e9ac 100644 --- "a/data/2.web\344\270\255\351\230\266/3.js\346\213\223\345\261\225/4.TypeScript/config.json" +++ "b/data/2.web\344\270\255\351\230\266/3.js\346\213\223\345\261\225/4.TypeScript/config.json" @@ -1,11 +1,14 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-5323165366c3475daa07f83a7bf85c46", "keywords": [], "children": [ { "TypeScript简介": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7ab68797d52d404796e768a5b469da31" } }, { @@ -19,16 +22,25 @@ { "变量名": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e411bdd4926745239bd630c88715dbe8" } }, { "变量声明": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7819b42db9d1407f834e5f5324233466" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2e14b7e88ba74cd6a6c0e3d2dae34f62" } }, { @@ -38,16 +50,25 @@ { "单行注释与多行注释": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-df13c42a63514ff696ffb7dff5cb06e7" } }, { "区域注释": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ea0a5109932441499f57d262a4994ecf" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ee642c2b737f440baad0b88d2879c165" } }, { @@ -57,46 +78,70 @@ { "Undefined": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fe1c1633af3e495cac7613baef86ed97" } }, { "Null": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-49f5ff01636a483a9b67792de55feeba" } }, { "Boolean": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-04298172bda04a85a3fdc830589c6418" } }, { "String": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3d4deed24c2040999f5cd7c23d456ec7" } }, { "Number": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-defe1e6b978e4d9b897b0a8c6819f044" } }, { "Symbol": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fc1258e8b23144899d31815d7ab04c44" } }, { "Object": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-17c3074c810742808cc021a3445a90d3" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9395f1545ac74f119e203b64009d9c60" } }, { @@ -106,34 +151,52 @@ { "Null字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d675f6e585f341af9471d0d9a73b1e4d" } }, { "Boolean字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d73ed226ce634482917024087fed7471" } }, { "Number字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ca73ae9e8d9f4c54bda5a157ab8c7584" } }, { "字符串字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-30b18c779d86462798e326c605bb819a" } }, { "模板字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-83e3d927a1ff456497f8cc43363af94c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2ba8f3a107af476d8003131944a449dd" } }, { @@ -143,16 +206,25 @@ { "对象字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-42a074a697084f1383a4eb315199c162" } }, { "原型对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c0e030ac9b5c4d71a70167346d2931f2" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d546b20d7df44e9ea9a2d4d83b34f80a" } }, { @@ -162,16 +234,25 @@ { "数组字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-41204fa327174392ae08d91aaa4c4957" } }, { "数组中的元素": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2fb9502dff38402b9749d9c9f3b9993a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b51301d9139d4413b7d7b671a3f80a99" } }, { @@ -181,25 +262,40 @@ { "函数声明": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8cd03d7184444bc090c0b87a89c089dd" } }, { "函数表达式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4f6a6cfe935a467ea47052de1cccdb6d" } }, { "箭头函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7427a6f4e1784f899ef0ba329eba663a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-74a6584372f4432886aecc57be4dcdba" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3dbb25d93fd747689c9eab7e88b6f5b1" } }, { @@ -213,16 +309,25 @@ { "创建BigInt": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-12637a8239a84f9b933167c93b16c2b7" } }, { "BigInt与Number": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b694fb8476b44ceda0f7f1d384d04056" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-191de053fb804795b1ca00a2bf0d9b7e" } }, { @@ -232,22 +337,34 @@ { "展开数组字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-256dfc39fcdf46dfaaced219e3e9f408" } }, { "展开对象字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-eddc0c8a1e514880b4abec9b76a51eee" } }, { "展开函数参数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bf6d4b12b2694f97a8bee0b5c307ec7d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6fed899a9e92456e96f21e9f1e85d5c8" } }, { @@ -257,16 +374,25 @@ { "数组解构": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c2bb8804c46e41babebd93d6fb6e66ed" } }, { "对象解构": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-376fd39f43a74c4496989ac5d46c380a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6c1d2287b64345bda55ac381246885cd" } }, { @@ -276,25 +402,40 @@ { "基础语法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c6f8c2878a9e4719bdcca7008bcedbe2" } }, { "短路求值": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6b0df51be3d444ef98cc2d88b1537006" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ca10f8883c48424ea4b0f3bbe9527b88" } }, { "空值合并运算符": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d9fbd75b9d12443d9541c1fc4995fbed" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4dfe624b46c74f7492cc0301dd22b5f9" } }, { @@ -304,7 +445,10 @@ { "类型注解": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3674ede008c24d2699892df598e28f82" } }, { @@ -314,16 +458,25 @@ { "非严格类型检查": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-41f0da44342d4add9ff70c1d76b8c683" } }, { "严格类型检查": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8147072018694c519824d2f2f8c01ca1" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-579ed38b2d09414ca70e215715976b31" } }, { @@ -333,46 +486,70 @@ { "boolean": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-281a6d5550bf4935af97ee457f6686f1" } }, { "string": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-de2dd55d9b8a4ea29fe2b65fb9779cb4" } }, { "number": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f2fdb030219c49a29782d0f75eb5bd9b" } }, { "bigint": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ffe62d8843ea49c8bbf7b8acb1ad20df" } }, { "symbol与unique symbol": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-216383a39c8c4a2bab149caf4798458e" } }, { "Nullable": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-72b77241779e49f8a6300f79f54d8cbf" } }, { "void": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8573eec3d8e14bca8d8d8c0d89002832" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d9d704da8a9446e5a15c76fe9ef77651" } }, { @@ -382,46 +559,70 @@ { "数值型枚举": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cb74bdfddce140c89a6f5a779544147d" } }, { "字符串枚举": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2d2601f13a0a44b2a77243e76f35850b" } }, { "异构型枚举": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fdc019a1d7e445cbb950e9493a3011bc" } }, { "枚举成员映射": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7af0314e8b794e6ea49e94529ff2b5a5" } }, { "常量枚举成员与计算枚举成员": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fc30c5da491a4032a4004471bd40e743" } }, { "联合枚举类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9ec6eb5ad15f4d589c4c1c64b87fc2a1" } }, { "const枚举类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e399291ed0a94428900304bc9c83120e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9d6509334c474c158e80b3adc725dcb0" } }, { @@ -431,34 +632,52 @@ { "boolean字面量类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a4677e8439b9471ab23fb0c7ac1ca9c9" } }, { "string字面量类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6ef5b951befd44b088c3ba79ee399f35" } }, { "数字字面量类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-77c6f76704ea4b17b237f10ea819050f" } }, { "枚举成员字面量类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c43697e90aa247449f28179993a97157" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-23df854139c1457bb7daadc4e786b148" } }, { "单元类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dc9a492c5dcb45b5ba5a65ac3a3b5871" } }, { @@ -468,22 +687,34 @@ { "any": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fe0a7d6769e247048a28e367500e28af" } }, { "unknown": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3f4413cb111c4b2db6b697c28ba25261" } }, { "小结": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-44ab7e0a69384594a482485b7c03db0b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9e775f9406dc498a8cd36adb868c8775" } }, { @@ -493,16 +724,25 @@ { "never": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3159f887392146b0a09b4cbfb022ee82" } }, { "应用场景": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5ed5e71f3aac448f935a97ae9fb82e3d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-64080052280d4c61a9a2a84a709dc6fa" } }, { @@ -512,22 +752,34 @@ { "数组类型定义": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3a5c74d2049c44b0aedcd40159091767" } }, { "数组元素类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-66d0995b63dc420cb3d9d65060baec26" } }, { "只读数组": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-44b4bb162dfe420eaea162ecbacc4df6" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-763819ac35c1413fb233d14093db7ab9" } }, { @@ -537,46 +789,70 @@ { "元组的定义": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8391bb61e9ff4f689f1a13fb04246357" } }, { "只读元组": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-093711748d9043fca8fd6273d28883ce" } }, { "访问元组中的元素": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6d0f73c61ccf4184bca5687760a3bf10" } }, { "元组类型中的可选元素": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-743f3057db854633a0c4164378a1af65" } }, { "元组类型中的剩余元素": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9cdadef7e24b4cdfa11f99873a9c675f" } }, { "元组的长度": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4293eb60332e40b597b8676e246bd4de" } }, { "元组类型与数组类型的兼容性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-580a9835b5534c56a0e57c4575719839" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7f99238312824e26a97ec77bb65eb685" } }, { @@ -586,34 +862,52 @@ { "Object": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-897c75a4a05344febfaff763cd2929ba" } }, { "object": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cbcc66b0adfd4927ae36f541cb8cb599" } }, { "对象类型字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c440ce3600874f24a1cb87fab3401e98" } }, { "弱类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-59e9d7f73f4842efae9df039eecd1b9a" } }, { "多余属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1dd057470bab4ea7882acbc9d3e51321" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-215bad7243fa4b93b99ff0a0c626e399" } }, { @@ -623,82 +917,124 @@ { "常规参数类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2985a89671d9427aa1b6418b79b6c789" } }, { "可选参数类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bdcfd12657cb49af8be12585f83a3511" } }, { "默认参数类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-83557a4dcbde41a8816d2b7e1d5f84ee" } }, { "剩余参数类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1cef038f80fe4fa1b870efdb48e6e016" } }, { "解构参数类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-da0d11437c294251bf2c97324def9e9a" } }, { "返回值类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8473126de2914ba2bde6610126f03fb2" } }, { "函数类型字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bfb97ea2499c4eab8c04a949d96291ea" } }, { "调用签名": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-82c5ba876ff1449384975e58d40e3bb3" } }, { "构造函数类型字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3dd8788da218482ea4a6c0462fedc768" } }, { "构造签名": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9d7b707070e340fabbd45372976dd9b1" } }, { "调用签名与构造签名": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f6e8473225e94118a5414ca56fbb9170" } }, { "重载函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fe07a504974249c9996f4513371a5541" } }, { "函数中this值的类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2ad1e6b808194490a7131ae756712dc9" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a78c9a96a1164f22af4ea0665a98791f" } }, { @@ -708,58 +1044,88 @@ { "接口声明": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d03b6015bfce48618706470ef5845974" } }, { "属性签名": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dd1ecc46ac8a4cbf8ae01d3113b92413" } }, { "调用签名": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-df62049955064f09a75cca4b91a61655" } }, { "构造签名": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d03aa8fb70cb4bc1ab78f73655df5558" } }, { "方法签名": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-462770e9d916418bbd077bcd1926e8f3" } }, { "索引签名": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2af378c13779447db578a1c6755c33cd" } }, { "可选属性与方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-121ccd7d32d34b63a7ea12f7f27a8e92" } }, { "只读属性与方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6c5677aa8cca48c88c38ae6cb0fd62e4" } }, { "接口的继承": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b31c243f8f564c8ca8758e2e5e4dab68" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d3e87bb51b274fe88692dcd976ac6b43" } }, { @@ -769,22 +1135,34 @@ { "类型别名声明": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9699faaf702d485488f2de7c7d6e5f7a" } }, { "递归的类型别名": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9b38f79541224f41954ca6dfe373c498" } }, { "类型别名与接口": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-baa13302bdde4003bb8c9e557e0f2cf2" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6fb0d26ac9354d2b976f4e0929d910f6" } }, { @@ -794,91 +1172,139 @@ { "类的定义": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-25beee64c79545579b501642b5399c86" } }, { "成员变量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cbc5c2f5d32b41a89f55b0f93b47e25a" } }, { "成员函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ac1d790b9dcd42428d6df713e666048c" } }, { "成员存取器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5d8b66ef604e4e83be48f5b5d7df1525" } }, { "索引成员": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-131f71c93aea4817b689d54250b5c7c2" } }, { "成员可访问性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-31fd39a25c0b4a9ca654ed3a46c9a111" } }, { "构造函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5bff8fa559b440539d631263830d3bf8" } }, { "参数成员": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-620f4b0839894ee88a25dededfc82544" } }, { "继承": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ec80b75c72084487873653cb639c0c93" } }, { "实现接口": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a37912c4c6ab458dbe5b638a73800152" } }, { "静态成员": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bdd80f7dce034485a21fa5231f4ce54b" } }, { "抽象类和抽象成员": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-168020c1f04b49099825e3c62ea9cddd" } }, { "this类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e229a01ca845460a838413f3cecf62a7" } }, { "类类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c2d1c60a06844e8c82d1e44d1d6c2f37" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f09d5c55684b4bd6b7eb27809ac89685" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2febcf3a4dd84209a1dff6d6877fd581" } }, { @@ -892,58 +1318,88 @@ { "泛型简介": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f13334efcf55417994588dd0eb4948d2" } }, { "形式类型参数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b3f1d88f44034ad2b74ae0172c8f4493" } }, { "实际类型参数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2578c7dbba5f49259cec108a90c0efe0" } }, { "泛型约束": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a336d7e5ea4a4610b914d2053e134f54" } }, { "泛型函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fd7a4a7b017e43629c5e8a44c67ebb4c" } }, { "泛型接口": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a28dc5b2c90b4bcba88dc99de39ebdcb" } }, { "泛型类型别名": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8c06d2f2341a46aa8fadd96904a4809b" } }, { "泛型类": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b68af63c0d96437da67cb43bb9111766" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d734a652603d4f09a1521c4cf7dc46c5" } }, { "局部类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c0b5f91aeb9d4763948b34c4158fcb52" } }, { @@ -953,16 +1409,25 @@ { "联合类型字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e9b726f0998045f18c2e2dd5534ed504" } }, { "联合类型的类型成员": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0ad85cbcf97f4822bf5fc28d1cd9bd9e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ba9762155bb54730a16e4a2c4aa3fffa" } }, { @@ -972,22 +1437,34 @@ { "交叉类型字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0993c833070d4120962eb365b35a7faa" } }, { "交叉类型的类型成员": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1e2456d336194fbdb61f80ac7e1e5e5c" } }, { "交叉类型与联合类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e0797f73b15a4019aa78a2ba949d14b7" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-74e08920333a43e4a27f65d462a4d212" } }, { @@ -997,22 +1474,34 @@ { "索引类型查询": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-04e11f8d26024cc1b3fe92283908f37a" } }, { "索引访问类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7c9b2492fb2a441eb3e98856cd10bc73" } }, { "索引类型的应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-28860a4cdab3415184a387710c170155" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-798b68c8503745609691ddcd4bfeae4d" } }, { @@ -1022,28 +1511,43 @@ { "映射对象类型声明": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-943274cb0db648d0a09b9ea9c4c2d883" } }, { "映射对象类型解析": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-926232f380554792bf0306374f39a601" } }, { "映射对象类型应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5017b69ed1b3446581b7949bea65bdc7" } }, { "同态映射对象类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-119c3e574ae7412bae673a0a5fa985e8" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b441f16eede747d999491c9aec2ce3c2" } }, { @@ -1053,22 +1557,34 @@ { "条件类型的定义": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-df937df770984c8386ab9ea473ef8944" } }, { "分布式条件类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-45356e66db594bf380f76045f55af002" } }, { "infer关键字": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d4c85f97e0974f39aed9dcbcac01dea8" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c8d2781afefc4607a8f8aa2d6f5adf78" } }, { @@ -1078,106 +1594,160 @@ { "Partial": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f0c4bd3e89164be9b698d5f5a270508c" } }, { "Required": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3c823849ee984d869b3cf30a0cf7c022" } }, { "Readonly": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e761ef98de7341efa8b951a1eaec9933" } }, { "Record": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1cbcd66ecb1448148dfecdbe4b8ca213" } }, { "Pick": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4d161ed6b9d44361b87b4706da8c3734" } }, { "Omit": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e154ff84058e45e4b7b0663fd3897061" } }, { "Exclude": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e35b7f6b2cd74edcb3e7bdb5a485570b" } }, { "Extract": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0f695cc13c374fbc985718b8f2d437e7" } }, { "NonNullable": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-803b23531f24471b88970585ec235c7d" } }, { "Parameters": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-27c34fff7fa0405ea895dc4e8c2c39d5" } }, { "ConstructorParameters": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e6c067c584964d1486d99ddfdc7bee36" } }, { "ReturnType": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-69d18ff19d6643bc8b61f78dac9630d6" } }, { "InstanceType": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e9c3acfdb56044e1898abba953fb31f4" } }, { "ThisParameterType": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5aeabd9dd8df4be38cd29359b7cda32b" } }, { "OmitThisParameter": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-81dddf911917493e904af882047a7772" } }, { "ThisType": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b2f5acadd9ce4e53beb548fc3068a4ab" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4a42de5fc922486db1d17f48d2328f35" } }, { "类型查询": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0e815203747d4f10b66b0e6ec3f16ade" } }, { @@ -1187,34 +1757,52 @@ { "类型断言": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1fed49a6d78b4a5ea379e8941d98a0d9" } }, { "as T类型断言": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6c6d256fa31d4f1cab14142c1da8bb46" } }, { "类型断言的约束": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-61ad5e9021f54c5ca8b217ce4a47bb81" } }, { "const类型断言": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a62abd2715204ad48c15fa001079d3a6" } }, { "!类型断言": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-32f50385870e42a1ad5396a2e5a4a295" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-eb115b63bdaa4e97bf551a041828ec67" } }, { @@ -1224,37 +1812,58 @@ { "类型守卫": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6ba580abfa164917b5de5e470baa106b" } }, { "可辨识联合类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f91e849f83f74bdb879a8b83fd096a5e" } }, { "赋值语句分析": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c80acc5d08ea48b093aeaeb2c37195bb" } }, { "基于控制流的类型分析": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3fd4804e37b44ce3a5e6211baa7bdd8f" } }, { "断言函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9a3dad4ddfad4735bd2821da00544724" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5a8a1e6a6b86423896d3748679526f1e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f143aa9bd4534f8fabd8f1cbbc6383db" } }, { @@ -1268,64 +1877,97 @@ { "类型系统可靠性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2b739a8424854d9ab5c2cc02a1e51454" } }, { "子类型的基本性质": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-24f3ce27f9884f4abe0c9993704f2046" } }, { "&端类型与尾端类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c30a8f8beaf94b38b03207bab0ee2a2b" } }, { "原始类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-97880290d810442c965d006eccfeb9a6" } }, { "函数类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-78a0f11c8ff4403394018b0d2f6fed06" } }, { "对象类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0b63b138fba94f2d93c4322c7436ba4f" } }, { "泛型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3d9eed30b9bb46a5bbc3cf4f764301b4" } }, { "联合类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-49d31949e611475292a7e7a760597ba8" } }, { "交叉类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7ce7d922fe364d9aa3089ae18286dc3b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8ab44377021c4d2eb2548e7378b77b26" } }, { "赋值兼容性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1a9df3eccf304904bdf83abd72469273" } }, { @@ -1335,16 +1977,25 @@ { "常规类型推断": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c50ebde80e96435daaa69ff260c53eb6" } }, { "按上下文归类": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0cf4ac70a01e402898c1787c25acb5b5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c196375565434bdd925b558c0cda2d27" } }, { @@ -1354,16 +2005,25 @@ { "常规类型放宽": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e7119b23502049a0be4d918e85a7cc65" } }, { "字面量类型放宽": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f3d67bf226af41d4aff88d28793c34d1" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-844e14c88274456eb9c3b62a418af962" } }, { @@ -1373,34 +2033,52 @@ { "命名空间声明": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2e24a53df9014e30899007464a00a1ce" } }, { "导出命名空间内的声明": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3b5a4b29c6214e0aa2d1421d96bb64af" } }, { "别名导入声明": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ba8dede9dce945278d09cbe64e6957d1" } }, { "在多文件中使用命名空间": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6cc0b2a817a842e3a2e37e7ce8aeddf2" } }, { "小结": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3f784bcda06e4e6cacb9c919be080ea1" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-28cb1432d5414b2fa8a2e0a6d1dafbee" } }, { @@ -1410,52 +2088,79 @@ { "模块简史": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4eab6ab686e641898863fdb14296fabb" } }, { "ECMAScript模块": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6b6ee9959f7a45b2a4837ceb8f6dfcaa" } }, { "模块导出": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-090f9446a9b14ab9b123a119e509c9fe" } }, { "模块导入": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2688b9b6a9c24daa9fa04ff600e3607d" } }, { "重命名模块导入和导出": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f808d666655245c3ad863a32951f0dd5" } }, { "针对类型的模块导入与导出 280": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b8c4953eac9f48e8a26d2b25e8bdfad3" } }, { "动态模块导入": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3c4debef89be4228aba4f29429411340" } }, { "--module": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0aa1bf26094d4428b4609b0ba7d69941" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-35cc9c91b8f8425ab65b2d9b859157db" } }, { @@ -1465,16 +2170,25 @@ { "外部类型声明": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6cfa8b729acc4a52bff4f3a32ebb9670" } }, { "外部模块声明": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a198e9f725424ebcbf217d0497ced1e2" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5f6fa12dcf85434a8c458c5b3de34470" } }, { @@ -1484,22 +2198,34 @@ { "语言内置的声明文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b30453eeb8284ee1b4ded112e51a8765" } }, { "第三方声明文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-83929766d86f4bde8f70ea0e8cc5ce28" } }, { "自定义声明文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-13cdd77f27ce477eba942bd16ffa79b4" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-86bbb830d407477688774d482cfa7a05" } }, { @@ -1509,64 +2235,97 @@ { "相对模块导入": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-612c91863d9f49a5956a6318d5193421" } }, { "非相对模块导入": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-99620708d59c407a8b1276d54ab3d551" } }, { "模块解析策略": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d6e64f1d8dc7416e9c47f9d0174f2432" } }, { "模块解析策略之Classic": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-89484a738e3340d9bc7fe0d8f89852e5" } }, { "模块解析策略之Node": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5e5d9e4e9be44ac8acefea1d270107dc" } }, { "--baseUrl": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6b47487bd6b847e58d47d4b07851aaf9" } }, { "paths": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-33b5cdf6dc0a4803adda14bd5261370c" } }, { "rootDirs": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a8fb0b790a5e40bd8877c01b103a1991" } }, { "导入外部模块声明": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d8cc757bf0df4a5ebade61f4c8bb2cf2" } }, { "--traceResolution": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3cddfcc9b91b47fbb80a2d5236234778" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ea28e2bb3b6b42aaba7cddf77a96ddf9" } }, { @@ -1576,43 +2335,67 @@ { "接口声明合并": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ecc9b14ca4714a8daba07a46a40140e9" } }, { "枚举声明合并": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-47f8e7a7dbcd4fc184085e87cd6f67c2" } }, { "类声明合并": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-99f3c74d30484cbbab0b008d95eb72e5" } }, { "命名空间声明合并": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2f053b43196941298b06067e37f1a7ac" } }, { "扩充模块声明": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d289ee220f87411c8862a060d8c7ac57" } }, { "扩充全局声明": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1ccaf9ac5ee8442e95a1503b386271b7" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0184643f32c541b6892d74644634ac4e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3b1f47cf01a142a8bd1edc55e91665e2" } }, { @@ -1626,16 +2409,25 @@ { "安装编译器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b2e8e855a5484a549014d856d6f8dc94" } }, { "编译程序": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6a8712a24a42488eb1180b2cc5d4ebe7" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c3e54963dd234a33a0af9517520621fe" } }, { @@ -1645,28 +2437,43 @@ { "编译选项风格": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8db29e13d9be43129233b45bbcfc7fb5" } }, { "使用编译选项": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3003703d591a47b586ca09d380631706" } }, { "严格类型检查": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a8c9f28a515442f0ba45e3d2b2b95b25" } }, { "编译选项列表": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d61821af96af4d90beb14a9e85448001" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-462b50be66334762a91bdbed176d79da" } }, { @@ -1676,34 +2483,52 @@ { "使用配置文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-abbb77a6e04047528a796d425dd3c9f7" } }, { "编译选项列表": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-84f474927c4c4848830338f605245622" } }, { "编译文件列表": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1157ddea28ae48a292ab4887c77deb5d" } }, { "声明文件列表": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-222d3e83e393467fb676c4854db7c98f" } }, { "继承配置文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-67983fbd3e834eb5827a3137a3c1e361" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-afca4256c4234b7c9053462da81a6f39" } }, { @@ -1713,28 +2538,43 @@ { "使用工程引用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7c24c517c57841a4968c462541486500" } }, { "工程引用示例": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-101efde914114cd9a30ad33a84b373a0" } }, { "--build": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1e34878f9da842d7817afd4d9156296e" } }, { "solution模式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-09f65238be2e404fa12741d967232437" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-270aaa261daa4cc1b7f9854afbef0165" } }, { @@ -1744,33 +2584,53 @@ { "编译": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f3b2d29221b04508937465c2a8ad4bba" } }, { "类型检查": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-44881aa937484c72b56423920343c863" } }, { "JSDoc与类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-caf7d7aab68b456783ea405c71c8e3ab" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c1e5d29ac8a44095a9c72d15ca7ffa3b" } }, { "三斜线指令": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2d7dc4c24c5d4d6e9348da657d20b489" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-677f7c0f27234862a034d73560dced98" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/3.js\346\213\223\345\261\225/config.json" "b/data/2.web\344\270\255\351\230\266/3.js\346\213\223\345\261\225/config.json" index 3407cf95a3919655576413ce3c70fe407e0719d7..d095ff7b75db733794ec2de041ddab95cae5ee97 100644 --- "a/data/2.web\344\270\255\351\230\266/3.js\346\213\223\345\261\225/config.json" +++ "b/data/2.web\344\270\255\351\230\266/3.js\346\213\223\345\261\225/config.json" @@ -1,4 +1,6 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [] + "node_id": "web-53d625c865b645ab84e7ad2c37012007", + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/4.node.js/1.Node\347\256\200\344\273\213/config.json" "b/data/2.web\344\270\255\351\230\266/4.node.js/1.Node\347\256\200\344\273\213/config.json" index 9f802e6079aeaf2f81cb42135e30bf1ebff3cdf6..52f87068b94c3ecd3f548ff7e6479501a641675e 100644 --- "a/data/2.web\344\270\255\351\230\266/4.node.js/1.Node\347\256\200\344\273\213/config.json" +++ "b/data/2.web\344\270\255\351\230\266/4.node.js/1.Node\347\256\200\344\273\213/config.json" @@ -1,11 +1,14 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-b09a2e8604444fc4a734c31c74a358a1", "keywords": [], "children": [ { "Node的诞生历程": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ad48a581b3eb4bd7bdb3f1fa583106c6" } }, { @@ -15,16 +18,25 @@ { "为什么是JavaScript": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d636fd706d304eb993be60f7c3bd550d" } }, { "为什么叫Node": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8bfc0ee510854c568636b05d215255ad" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cb0cb2abea054e6ab686f1a11551f2f5" } }, { @@ -34,28 +46,43 @@ { "异步IO": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f91c4fbbb0384f20a04be4f23dd189bb" } }, { "事件与回调函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-10d8afb312da4b2e9d6b30e2a6d85788" } }, { "单线程": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-93a858ba74f145a2a9eb00650f8139d5" } }, { "跨平台": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9e05504905764fb994a3b3f36b9edeee" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b865599765e9470bb634ea404746c71f" } }, { @@ -65,30 +92,47 @@ { "IO密集型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7eda7b3c53684f6f9bc949966d2eb4d2" } }, { "是否不擅长CPU密集型业务": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-810d5a73494c4473ba1a30b209855f65" } }, { "与遗留系统和平共处": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-763d840638d743128927c774ec85256f" } }, { "分布式应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e54eb99566764ff3a55982d5365f1159" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c11fafd04f6347458a9cb2137daa870e" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/4.node.js/2.\346\250\241\345\235\227\346\234\272\345\210\266/config.json" "b/data/2.web\344\270\255\351\230\266/4.node.js/2.\346\250\241\345\235\227\346\234\272\345\210\266/config.json" index da979ee373ee22cccd66a054101ec821765862d1..b44797b067b60a10ca5070dce438b879963bad47 100644 --- "a/data/2.web\344\270\255\351\230\266/4.node.js/2.\346\250\241\345\235\227\346\234\272\345\210\266/config.json" +++ "b/data/2.web\344\270\255\351\230\266/4.node.js/2.\346\250\241\345\235\227\346\234\272\345\210\266/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-58b249123d9e4d9a9a2ad80bbc604ab8", "keywords": [], "children": [ { @@ -9,16 +9,25 @@ { "CommonJS的出发点": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b301ceb3d1374e29bb26dba2877efe02" } }, { "CommonJS的模块规范": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f7d438d4904444e2b6d87efac2bec33d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-65c82942c20643218fa91e4d4f3bd6b8" } }, { @@ -28,22 +37,34 @@ { "优先从缓存加载": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d2d066461e7d49d9b9d45d8bf46b46ba" } }, { "路径分析和文件定位": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-04ea36775e724ed6873342b0a938b53a" } }, { "模块编译": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8dc88b8db75941c18e828aaf020365d6" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1066e23ec28e488b9b38bbf4378da003" } }, { @@ -53,28 +74,43 @@ { "JavaScript核心模块的编译过程": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5c17bb35380a4e778a03bdc552a9f3b9" } }, { "C&C++核心模块的编译过程": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2a444a2980974fd0a1fd5210574381f7" } }, { "核心模块的引入流程": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-edfed23dba344b4ab351cabc29755296" } }, { "编写核心模块": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-feb524b25f724f3389bc8c991f288aea" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6af10758c5334b4993f5bb9b77992749" } }, { @@ -84,34 +120,52 @@ { "前提条件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-924117857d6a450a998c4336a7121a47" } }, { "C&C++扩展模块的编写": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7b7f68e147bd402eaac350a2d93354f0" } }, { "C&C++扩展模块的编译": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1e661c419639470b9736b905684f4b76" } }, { "C&C++扩展模块的加载": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6a4b866b63014f2c8ede1a71dac2dc8c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4634997c1c9f44ad803d04dd21541a98" } }, { "模块调用栈": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-523b0b91aed649aab228a06244943900" } }, { @@ -121,34 +175,52 @@ { "包结构": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1cb0ee0b5fdd41afa3e022b47f35a887" } }, { "包描述文件与NPM": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8633f69878774f46a1709d1278e80fc4" } }, { "NPM常用功能": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-98876a399f7c4a069596b265ac093dc1" } }, { "局域NPM": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-90ab54b0c76e4ac7ad2ab505585b9f94" } }, { "NPM潜在问题": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8b18a431780a470ba016afd191e35038" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4e28531cb9d54af4b1b5213e0fdc812a" } }, { @@ -158,30 +230,47 @@ { "模块的侧重点": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2b858bc7f37742c0b17bd7bf84a7b649" } }, { "AMD规范": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b4fbcf7c6bbe42b1a2d9d178a990b976" } }, { "CMD规范": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e78419a49cd444e287a62867774d32b0" } }, { "兼容多种模块规范": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-12bc081d7e8a4a69a8d8dae3f717da97" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2091c0f7032d43fda17a8264724f4acb" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/4.node.js/3.\345\274\202\346\255\245IO/config.json" "b/data/2.web\344\270\255\351\230\266/4.node.js/3.\345\274\202\346\255\245IO/config.json" index 8cf5a6f4f6793906bfcb9839d3aab19d07af3aa8..b7dfc426359effa3deda62bff2637c8d450d8103 100644 --- "a/data/2.web\344\270\255\351\230\266/4.node.js/3.\345\274\202\346\255\245IO/config.json" +++ "b/data/2.web\344\270\255\351\230\266/4.node.js/3.\345\274\202\346\255\245IO/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-8c64acae544d4dc3821a8eeb9a8629eb", "keywords": [], "children": [ { @@ -9,16 +9,25 @@ { "用户体验": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-39db4920ae234298a1010bc4d7129368" } }, { "资源分配": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f0c32a32d16b42998d1c142dde0dd4f3" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-481a5814ab4748a098e7f9fa64c56c30" } }, { @@ -28,22 +37,34 @@ { "异步IO与非阻塞IO": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-29ff182069a34d62955209bfc77dc075" } }, { "理想的非阻塞异步IO": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8f37c4b298274990bdb8dc2766fc2d43" } }, { "现实的异步IO": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ec44e2bbcbea439687b248014e273c66" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2c2a8d2c952b403dbd78fb5d226bcb04" } }, { @@ -53,34 +74,52 @@ { "事件循环": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-100c4a685f9843a9926475dfea725940" } }, { "观察者": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-433211a304774d8cb87115b3d4d633a3" } }, { "请求对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3fb6cccd6273407da43a1fb85cd2f82f" } }, { "执行回调": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-98b5fd21b8cf43a7a9db305ffc03e2cc" } }, { "小结": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b354189092264becb6d3eae55ac802ea" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e4d352ebf12e443d9b89cdecdfba360b" } }, { @@ -90,30 +129,47 @@ { "定时器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f42736a1c71a4364bcfa973dd89d9219" } }, { "process.nextTick()": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c9e285664257427390f99697ec7767d3" } }, { "setImmediate()": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5f75eec8a2544997ad6428d7776261b6" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-61b7f8dcb22d48278e1000a47f5098db" } }, { "事件驱动与高性能服务器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8748861c35b148fba29f995ed0a8fd23" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/4.node.js/4.\345\274\202\346\255\245\347\274\226\347\250\213/config.json" "b/data/2.web\344\270\255\351\230\266/4.node.js/4.\345\274\202\346\255\245\347\274\226\347\250\213/config.json" index 09577fb404123ee1bd63d68c038ab6fa579b01e7..ae364e4dccafe01765b0012f58be66a77c9fb567 100644 --- "a/data/2.web\344\270\255\351\230\266/4.node.js/4.\345\274\202\346\255\245\347\274\226\347\250\213/config.json" +++ "b/data/2.web\344\270\255\351\230\266/4.node.js/4.\345\274\202\346\255\245\347\274\226\347\250\213/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-af5d9dbc762846299ff11566b94561eb", "keywords": [], "children": [ { @@ -9,16 +9,25 @@ { "高阶函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-933a00959f5542a58b6331bdcb37b603" } }, { "偏函数用法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-044226934df7458e8cb6067201a7f590" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-26836d2e9e5141cc8af21f132da19421" } }, { @@ -28,16 +37,25 @@ { "优势": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8ab3c19a962e4ae9bc392ac6ca4d5170" } }, { "难点": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-59bef18ec2a94bef8fa9bf4ec92809b0" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2b304f097cc34736b5bfdffe53a65840" } }, { @@ -47,22 +65,34 @@ { "事件发布 & 订阅模式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ba9a18464f694f289d9cf2b4c32e20b9" } }, { "Promise & Deferred模式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c62217c024f448ba837f6f96afdc6d54" } }, { "流程控制库": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9d56bbc797f140e3aebb2cb9f6ad8c31" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-66150ad48803443b9a4c8687a16781ce" } }, { @@ -72,18 +102,29 @@ { "bagpipe的解决方案": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f4e1ec0a7e6641d58084a24a7ee35d88" } }, { "async的解决方案": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-382341a113e343ec9d3b9706cf42a3ba" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-273c5f4277064e2e8ec5fcb1089573e3" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/4.node.js/5.\345\206\205\345\255\230\346\216\247\345\210\266/config.json" "b/data/2.web\344\270\255\351\230\266/4.node.js/5.\345\206\205\345\255\230\346\216\247\345\210\266/config.json" index 75d503ced294ca4b2d640e2e93841d0d31119766..6dd955b451bcf5d1293f5cf06b14d92a4b411bfc 100644 --- "a/data/2.web\344\270\255\351\230\266/4.node.js/5.\345\206\205\345\255\230\346\216\247\345\210\266/config.json" +++ "b/data/2.web\344\270\255\351\230\266/4.node.js/5.\345\206\205\345\255\230\346\216\247\345\210\266/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-1982e6fe74554cfca6170a5395f1b560", "keywords": [], "children": [ { @@ -9,34 +9,52 @@ { "Node与V8": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-07ab0dd0f95b4efaaa82e08333eaae9d" } }, { "V8的内存限制": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bd7e8c7a1af344e98e84b428745eff75" } }, { "V8的对象分配": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-51994d6496c14feea44767e82b828441" } }, { "V8的垃圾回收机制": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b27a978d950c44a5b700b3e90d7bcc05" } }, { "查看垃圾回收日志": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f8ab60355a054473b1ef905cba51f1a5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-20ce2c3f6768421593c2075de74fa292" } }, { @@ -46,22 +64,34 @@ { "作用域": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-71f1cc382a9e4ae6b04686b837577ee5" } }, { "闭包": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e8e4fbb317be40fdbe48db7976153b8d" } }, { "小结": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3d35cf03b61a4a35a092e47e2470849a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5d3e0854e910447483b1ee8706e74593" } }, { @@ -71,22 +101,34 @@ { "查看内存使用情况": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0d017548496f44c980d689c23148df86" } }, { "堆外内存": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4e692e97f6164601b92bbe5bd9d03035" } }, { "小结": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b5f0fe87765c4fceb24dfefde8cdd8f9" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ea5435c66d094e44863d7a15faf70666" } }, { @@ -96,16 +138,25 @@ { "慎将内存当做缓存": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aaa2512a23f8452e9820275e062ac4a3" } }, { "关注队列状态": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3fc5f05ed9e04c6f901faa6259f2fcdc" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3ce89754ed3e4e54a7d3a49c7fbb388d" } }, { @@ -115,30 +166,47 @@ { "node-heapdump": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e897d31a9c6746ccb7d7e4e2d55fa117" } }, { "node-memwatch": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dc1311f55985460fbeae9f0ae8e96f12" } }, { "小结": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6ae61ee0f38d4d78abf749b81e10b99f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b0f6f09bd6bf4f5da8b14e8fbcf591cd" } }, { "大内存应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f0c53d828a8040ad91c4d53c39acf033" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/4.node.js/6.\347\220\206\350\247\243Buffer/config.json" "b/data/2.web\344\270\255\351\230\266/4.node.js/6.\347\220\206\350\247\243Buffer/config.json" index 29cec155c6d8ea2cc09503012580f76eb5a5a8ad..1d17b92f284ebbe23ed64ac55061939fb9e18ef3 100644 --- "a/data/2.web\344\270\255\351\230\266/4.node.js/6.\347\220\206\350\247\243Buffer/config.json" +++ "b/data/2.web\344\270\255\351\230\266/4.node.js/6.\347\220\206\350\247\243Buffer/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-e296b6cb5cdc4413905a63b4d39362f8", "keywords": [], "children": [ { @@ -9,22 +9,34 @@ { "模块结构": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-de867b13435b47d18b98a5e53b14096b" } }, { "Buffer对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-20db2434dfe14b918c7bc56d81db4673" } }, { "Buffer内存分配": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c4294062350446cfbe59ff45b4d35db8" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7cf0b3c2b6a54e01b7371ff14fd56ca7" } }, { @@ -34,22 +46,34 @@ { "字符串转Buffer": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8c2388756603455cb4e7cd9b43c75924" } }, { "Buffer转字符串": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-285e82cbd8a54388864b376a653219a4" } }, { "Buffer不支持的编码类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-07a8b8aa2f1644aebb25b3dcc595bf08" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ec27180f69904e8ba9554c48af87d025" } }, { @@ -59,30 +83,47 @@ { "乱码是如何产生的": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6f880fc0f18448ebb5ebf497e92bdcd0" } }, { "setEncoding()与string_decoder()": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1cc4dfb4986f4f2897fd35b6084debf9" } }, { "正确拼接Buffer": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-af58548c0db04c0e8ab2e0e9bacf0975" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a22f7c94aa264edea33cb8c4adc4fe1e" } }, { "Buffer与性能": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1f922218808d44e99673ef8af6f7565c" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/4.node.js/7.\347\275\221\347\273\234\347\274\226\347\250\213/config.json" "b/data/2.web\344\270\255\351\230\266/4.node.js/7.\347\275\221\347\273\234\347\274\226\347\250\213/config.json" index 6a846bf61cca175443e8e0d04968ae9802edbbe0..1b0121b73fedd1836f034703c9f4a9a9d7b8ca3b 100644 --- "a/data/2.web\344\270\255\351\230\266/4.node.js/7.\347\275\221\347\273\234\347\274\226\347\250\213/config.json" +++ "b/data/2.web\344\270\255\351\230\266/4.node.js/7.\347\275\221\347\273\234\347\274\226\347\250\213/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-f908fe0dce6b4049a80c931a73f34880", "keywords": [], "children": [ { @@ -9,22 +9,34 @@ { "TCP": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-08d1337469144dd68da52f39d370a46f" } }, { "创建TCP服务器端": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c16b11201f2d43eaa8a0b5379808c737" } }, { "TCP服务的事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aa72ee6211764529812d3a6e136a7cde" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a1996cecb99f49128b419c39c1068df0" } }, { @@ -34,28 +46,43 @@ { "创建UDP套接字": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2053c0173d7b482783de1a0f29ce4867" } }, { "创建UDP服务器端": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fb8ff4ee3be746179b12a72d6f629260" } }, { "创建UDP客户端": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-738338ea344b4671a9a174cb148628d4" } }, { "UDP套接字事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-91448dbd7c3f47e0b102acadf2cf593f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f6fcf09151794448b3e2b2681bfb0762" } }, { @@ -65,22 +92,34 @@ { "HTTP": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dd76414bd50d48d49a2cbb31af13b8cb" } }, { "http模块": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fcb398c79b8f4c67b0339cd7d8b94658" } }, { "HTTP客户端": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-59d44ab0274744278f8691879fa28280" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5f0c6ec4466c42e882650a0f59646686" } }, { @@ -90,22 +129,34 @@ { "WebSocket握手": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5ce090f4c8b74439a1b1076df4086182" } }, { "WebSocket数据传输": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4151efc018b5499c90d8d31a77cc58ee" } }, { "小结": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a5c2473858b6452f8c8fa0ea1bcac825" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b41027821820468a8be187282f28b74d" } }, { @@ -115,24 +166,38 @@ { "TLS & SSL": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fe566fdde4ef444d9a8b2e633c06eb2c" } }, { "TLS服务": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-397f2d23f21f4ccf81539e2e0600c049" } }, { "HTTPS服务": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ee2c76178b5e4a2082d2d3bc55f1a2da" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7aa06a393b2742b49fa88abc1791cebd" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/4.node.js/8.\346\236\204\345\273\272Web\345\272\224\347\224\250/config.json" "b/data/2.web\344\270\255\351\230\266/4.node.js/8.\346\236\204\345\273\272Web\345\272\224\347\224\250/config.json" index 11e89bc0447c0351587d93251c79fd57d3a22d36..6c7a423b851aff3877a8f024b75fa6b4a11de3c8 100644 --- "a/data/2.web\344\270\255\351\230\266/4.node.js/8.\346\236\204\345\273\272Web\345\272\224\347\224\250/config.json" +++ "b/data/2.web\344\270\255\351\230\266/4.node.js/8.\346\236\204\345\273\272Web\345\272\224\347\224\250/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-b683bd841b004e0eb8341e5c30cf9789", "keywords": [], "children": [ { @@ -9,46 +9,70 @@ { "请求方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e6381bdd5505455db9584c5a83855b63" } }, { "路径解析": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bcd364d581d1443a99a660c36bbc3585" } }, { "查询字符串": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bf23de9086b94817a1eb192f5c3b1996" } }, { "Cookie": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-396447c0d35c45f6a78e665e78e1f61e" } }, { "Session": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e686a3cbb3d54e09a2f21e6b7af88405" } }, { "缓存": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cde7546918f34360a580a2d20432c6d2" } }, { "Basic认证": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-092fdf63fdf94754bcefa46d0f15fab0" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-68421b20ad1e4a98ba9b79153b45d721" } }, { @@ -58,28 +82,43 @@ { "表单数据": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-447e1f2f8d6e4b9e821b901648c5a749" } }, { "其他格式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-797d2e9dedd64dcd9d80f786a290c826" } }, { "附件上传": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ed34a3faaa804502b0f85088dd2a6b44" } }, { "数据上传与安全": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-db863d7dccad464eb4d7ddaa8258e564" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-82d0b718e718462da5516444aef7b7c3" } }, { @@ -89,22 +128,34 @@ { "文件路径型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b8742b794e41472eb90e457e54b081b8" } }, { "MVC": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-addcae802cfa413aba062526151f60ce" } }, { "RESTful": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-861ca1d470524214a1710640d01094e7" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-19d55f4977ca43c1ae5047833022befc" } }, { @@ -114,22 +165,34 @@ { "异常处理": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-929dd68d19404a6196d322c54d862776" } }, { "中间件与性能": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d5f7cc919bfb4eb297bfddc8db1e7779" } }, { "小结": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1b2ded70891e4285be72537eb04092ce" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0677cada5fb845e4888bb627f4d4aca9" } }, { @@ -139,30 +202,47 @@ { "内容响应": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-216727e37cb540e6bb571e4adc248bb3" } }, { "视图渲染": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a0d098cca1e5444c9730508cef901d85" } }, { "模板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-432c78b88d4c47ea802a2257e7575cbc" } }, { "Bigpipe": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-de28afb0e2844c5089d4de14eaa8fe07" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-909ac79758334d88a63a27f34f6c0aa6" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/4.node.js/config.json" "b/data/2.web\344\270\255\351\230\266/4.node.js/config.json" index 3407cf95a3919655576413ce3c70fe407e0719d7..66a8f67d1b6dd2038f693fde752d5bd9b4df965f 100644 --- "a/data/2.web\344\270\255\351\230\266/4.node.js/config.json" +++ "b/data/2.web\344\270\255\351\230\266/4.node.js/config.json" @@ -1,4 +1,6 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [] + "node_id": "web-871d3f963d684072af46f7086e734745", + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/5.\345\214\205\347\256\241\347\220\206\345\231\250/1.npm/config.json" "b/data/2.web\344\270\255\351\230\266/5.\345\214\205\347\256\241\347\220\206\345\231\250/1.npm/config.json" index f6416a1a57a86a638c71ad1c8742a38349a88fe3..861f11b39b93106537b39a23725b398cf90de744 100644 --- "a/data/2.web\344\270\255\351\230\266/5.\345\214\205\347\256\241\347\220\206\345\231\250/1.npm/config.json" +++ "b/data/2.web\344\270\255\351\230\266/5.\345\214\205\347\256\241\347\220\206\345\231\250/1.npm/config.json" @@ -1,6 +1,8 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-9d33f0d813b9488e97ae1c7f42e271b3", "keywords": [], "children": [], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/5.\345\214\205\347\256\241\347\220\206\345\231\250/2.yarn/config.json" "b/data/2.web\344\270\255\351\230\266/5.\345\214\205\347\256\241\347\220\206\345\231\250/2.yarn/config.json" index f6416a1a57a86a638c71ad1c8742a38349a88fe3..c36f3247af1a981661040d168d4675442655b348 100644 --- "a/data/2.web\344\270\255\351\230\266/5.\345\214\205\347\256\241\347\220\206\345\231\250/2.yarn/config.json" +++ "b/data/2.web\344\270\255\351\230\266/5.\345\214\205\347\256\241\347\220\206\345\231\250/2.yarn/config.json" @@ -1,6 +1,8 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-d30f07e9f83d4bc2b0904488e1ed9826", "keywords": [], "children": [], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/5.\345\214\205\347\256\241\347\220\206\345\231\250/3.nvm/config.json" "b/data/2.web\344\270\255\351\230\266/5.\345\214\205\347\256\241\347\220\206\345\231\250/3.nvm/config.json" index f6416a1a57a86a638c71ad1c8742a38349a88fe3..84b7feee5e0643167a3015d42804db756a8d4560 100644 --- "a/data/2.web\344\270\255\351\230\266/5.\345\214\205\347\256\241\347\220\206\345\231\250/3.nvm/config.json" +++ "b/data/2.web\344\270\255\351\230\266/5.\345\214\205\347\256\241\347\220\206\345\231\250/3.nvm/config.json" @@ -1,6 +1,8 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-3f604f29fcc54be6a6f42dcbe0f04c6a", "keywords": [], "children": [], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/5.\345\214\205\347\256\241\347\220\206\345\231\250/config.json" "b/data/2.web\344\270\255\351\230\266/5.\345\214\205\347\256\241\347\220\206\345\231\250/config.json" index 3407cf95a3919655576413ce3c70fe407e0719d7..1803935b9d2653de0a20e19c6c0cb5c204536f73 100644 --- "a/data/2.web\344\270\255\351\230\266/5.\345\214\205\347\256\241\347\220\206\345\231\250/config.json" +++ "b/data/2.web\344\270\255\351\230\266/5.\345\214\205\347\256\241\347\220\206\345\231\250/config.json" @@ -1,4 +1,6 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [] + "node_id": "web-85c0bcab48d74ca294f517d10f9364cf", + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/6.\346\236\204\345\273\272\345\267\245\345\205\267/1.\344\273\273\345\212\241\350\277\220\350\241\214\345\274\217/config.json" "b/data/2.web\344\270\255\351\230\266/6.\346\236\204\345\273\272\345\267\245\345\205\267/1.\344\273\273\345\212\241\350\277\220\350\241\214\345\274\217/config.json" index 2829efc91f4766a0fe4bc334b977077a4e673003..87ad5a734dfd561fed3ed90d4bdff2015d7dd5f6 100644 --- "a/data/2.web\344\270\255\351\230\266/6.\346\236\204\345\273\272\345\267\245\345\205\267/1.\344\273\273\345\212\241\350\277\220\350\241\214\345\274\217/config.json" +++ "b/data/2.web\344\270\255\351\230\266/6.\346\236\204\345\273\272\345\267\245\345\205\267/1.\344\273\273\345\212\241\350\277\220\350\241\214\345\274\217/config.json" @@ -1,19 +1,27 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-0e798ec9cb2e497480aa5151913d5413", "keywords": [], "children": [ { "gulp": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-49ac353df69a49d0adf5c2c014e56d41" } }, { "npm脚本": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-49155fd68c404441bd6a421f2d70eb6a" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/6.\346\236\204\345\273\272\345\267\245\345\205\267/2.\346\250\241\345\235\227\346\215\206\346\211\216\345\274\217/config.json" "b/data/2.web\344\270\255\351\230\266/6.\346\236\204\345\273\272\345\267\245\345\205\267/2.\346\250\241\345\235\227\346\215\206\346\211\216\345\274\217/config.json" index cad94684062165a070762ef5f61914dc355ce080..7cc04a3c01bcd3a2b68c9d92c9d2436973e251d0 100644 --- "a/data/2.web\344\270\255\351\230\266/6.\346\236\204\345\273\272\345\267\245\345\205\267/2.\346\250\241\345\235\227\346\215\206\346\211\216\345\274\217/config.json" +++ "b/data/2.web\344\270\255\351\230\266/6.\346\236\204\345\273\272\345\267\245\345\205\267/2.\346\250\241\345\235\227\346\215\206\346\211\216\345\274\217/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-cb29c282b9544afd950dd6de723620c5", "keywords": [], "children": [ { @@ -9,19 +9,28 @@ { "安装": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dc5247477609463d9531111b4c59546f" } }, { "基本使用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7bb8a28e99844e3ab160d97fad10a768" } }, { "命令行": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-eafd22cd66ca46969c1edd1d50ad591d" } }, { @@ -31,39 +40,62 @@ { "context": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-60ac717926c94aac9a692e3ba2866a64" } }, { "entry": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-219c2024b40147cba321c8701d61b460" } }, { "output": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7469500b70fb479381ac4d8c84dc92e1" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e67dae8414734b4fabe94058da0e61bd" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fddca09ba62848f5976fe88ac1aae69c" } }, { "rollup": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f283ffb7ca7143c1bdda3b3a2e65a7d0" } }, { "parel": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-273cb5cde370487c9ffe9e7063fcb62b" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/6.\346\236\204\345\273\272\345\267\245\345\205\267/config.json" "b/data/2.web\344\270\255\351\230\266/6.\346\236\204\345\273\272\345\267\245\345\205\267/config.json" index 3407cf95a3919655576413ce3c70fe407e0719d7..2b22625d9d50e6890365c968f89bd8767022b573 100644 --- "a/data/2.web\344\270\255\351\230\266/6.\346\236\204\345\273\272\345\267\245\345\205\267/config.json" +++ "b/data/2.web\344\270\255\351\230\266/6.\346\236\204\345\273\272\345\267\245\345\205\267/config.json" @@ -1,4 +1,6 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [] + "node_id": "web-3c5161902471421abf934854d615df51", + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/7.CSS \347\274\226\350\257\221/1.Sass/config.json" "b/data/2.web\344\270\255\351\230\266/7.CSS \347\274\226\350\257\221/1.Sass/config.json" index e330ae33e267d3700f21f72edce08af07b953da8..f1569ce8bf83daac3a6f337793aef96f05750915 100644 --- "a/data/2.web\344\270\255\351\230\266/7.CSS \347\274\226\350\257\221/1.Sass/config.json" +++ "b/data/2.web\344\270\255\351\230\266/7.CSS \347\274\226\350\257\221/1.Sass/config.json" @@ -1,49 +1,72 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-79af747dd8d94f839a969d84cea38200", "keywords": [], "children": [ { "安装": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1445acee1f334b6899cdb86b04ae419a" } }, { "变量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-839ad186dba74ce098b829b6775ac5f2" } }, { "嵌套规则与属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-085416c33c854f31be00e452150ba0f2" } }, { "@import与Partials": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5e8011bc76ff4fb0996adce6d9678842" } }, { "@minxin与@include": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-37b9d76323944e6f948b11734935edad" } }, { "@extend与继承": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-66b32ca3e5124de690069c1cbfb6ff38" } }, { "函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-531f927141b34550a4b988a82603a4cd" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/7.CSS \347\274\226\350\257\221/2.Less/config.json" "b/data/2.web\344\270\255\351\230\266/7.CSS \347\274\226\350\257\221/2.Less/config.json" index 9c35dfc295e5e4c398369ec814d089efaadb1b85..2fed204dd366beed1eeaabf2f1d6ca238e88d688 100644 --- "a/data/2.web\344\270\255\351\230\266/7.CSS \347\274\226\350\257\221/2.Less/config.json" +++ "b/data/2.web\344\270\255\351\230\266/7.CSS \347\274\226\350\257\221/2.Less/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-469e24114b474fad82183b5dcbdcd559", "keywords": [], "children": [ { @@ -9,40 +9,61 @@ { "安装": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1e487363432743858bc9698cec125b07" } }, { "命令行用法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b25f267e92b547f3bc6365e97b9717e8" } }, { "配置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-31a43b8844b14165a82cd3ac9e1b0b9f" } }, { "第三方工具": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b01d3f92532b4d3fa88138895b4f15e8" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5eef4a2d24d945f19114f28f46f050ef" } }, { "Rhino命令行": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2982b2d7a72c406fbf78b65d9b8234ef" } }, { "客户端用法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e7c909fed8bf41e583697513d74f8388" } }, { @@ -52,18 +73,29 @@ { "浏览器下载": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4fa568eb4f684fc5bbef1b646207441f" } }, { "Less CDN": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b5a663b607bf46a09a77b69cfe65315c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e33b204a282d4a0bb12b95ae4eeef3b2" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/7.CSS \347\274\226\350\257\221/3.Stylus/config.json" "b/data/2.web\344\270\255\351\230\266/7.CSS \347\274\226\350\257\221/3.Stylus/config.json" index 59dc48ed308dc2c2cab4717a32b6127b82401640..5eee819c1973e3e700403ece21a0619724975d78 100644 --- "a/data/2.web\344\270\255\351\230\266/7.CSS \347\274\226\350\257\221/3.Stylus/config.json" +++ "b/data/2.web\344\270\255\351\230\266/7.CSS \347\274\226\350\257\221/3.Stylus/config.json" @@ -1,163 +1,243 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-93b1cb8e86044c58b750d17102e67741", "keywords": [], "children": [ { "安装": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-84026c18cf7746fab2740d7295d45ac3" } }, { "特征": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2c8e1befc3474549be297af7459772ed" } }, { "选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e2fa5d71260b44fdac9afbef99692606" } }, { "变量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1137caa24f9245e7a6dfbcb429d2aeb4" } }, { "插值": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a6fea8aaefef43daa79bfa486b5f7b1c" } }, { "运算符": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-af817a2a667b4e08bdcd62534b1fa25a" } }, { "混合书写": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-efbf93ec5e60427ca68f6ba58ad5a7d6" } }, { "函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-768e3c1605244cab91ab19226cf84c2f" } }, { "关键字参数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7d23cabeb4134d509c58774720efaa74" } }, { "内置方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-79889485bfbe4c0697a4e678cd7a9f7a" } }, { "其他参数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dc5ddd209cac426c9b3ee862f2791c06" } }, { "注释": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ae3c17ba10604e6ebf3570ec3f34243a" } }, { "迭代": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-46545f1912a74658beefcd5f5a08b04f" } }, { "@import": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ce432d58beaa4fd58dfa0a1ad21d2ba6" } }, { "@media": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9c5bea7a23364159963104461453dbd4" } }, { "@font-face": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c8ccddf236ed4b5a9225b7ba06f19721" } }, { "@keyframes": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a5c92721aad44580bbce18526bdeb90e" } }, { "@extend": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ba9c21747f1c4c2eb9481962371b6d06" } }, { "url": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dac3d0dac8244f34bfd93e3f00d3b888" } }, { "CSS字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7326165c7cb8478ca91d29368190c2fb" } }, { "CSS样式解析": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ff47f53aa4004074885f96f68bb470c6" } }, { "字符转码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0ed8e311de094c18800e5a1eb17c199d" } }, { "可执行性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8ba84f7b40544c02895f798f0857458a" } }, { "错误报告": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c7ada732573e46a6b92c37ef1c0d3230" } }, { "连接中间件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-55d725cd927c42a1850e71b1a99c6ebf" } }, { "自检API": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-59d9ef2232cd4e60904c82ca7e6ab008" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/7.CSS \347\274\226\350\257\221/4.PostCSS/config.json" "b/data/2.web\344\270\255\351\230\266/7.CSS \347\274\226\350\257\221/4.PostCSS/config.json" index 37fbee50191fb756fd7b42426e19d063e806b104..0cdb3ccea1ac47b779154bdfd7fa0bcfdb2f40a5 100644 --- "a/data/2.web\344\270\255\351\230\266/7.CSS \347\274\226\350\257\221/4.PostCSS/config.json" +++ "b/data/2.web\344\270\255\351\230\266/7.CSS \347\274\226\350\257\221/4.PostCSS/config.json" @@ -1,11 +1,14 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-7194c5e8d5f548dcbe3fdfb20ea658ba", "keywords": [], "children": [ { "PostCSS runner": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4b7b4ddab7a947549afd9c787adfa255" } }, { @@ -15,22 +18,34 @@ { "语法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-77de342bee3f40b8a115992b8dbbb21c" } }, { "解析器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-15ca6152b5464081bb16ec167e1cfe27" } }, { "字符串生成器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f35b612db2324bc8ab15403bfd299c39" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-acf292d6c3c249c58060dcfd0d00b1b2" } }, { @@ -40,78 +55,119 @@ { "控制": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-53d1f064ee094cc8801a94a1b7814344" } }, { "打包": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f32591f0716b48aa8ada95570e659d55" } }, { "面向未来的CSS语法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d6500c8f090143c28c7fb56f5cebcff3" } }, { "向下兼容": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fdc2c074f95c4c90a904803bd89fba57" } }, { "语言扩展": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0802fef8a8f341e4afa35d56d00730f1" } }, { "颜色": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-52d0e3485c7c45f096a2afe02053c43d" } }, { "图片与字体": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4b9154f1c7ae44a09cbe6368d54751f4" } }, { "网格": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0397378cf3ba4cd69d6ce9771aec8ab1" } }, { "优化": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-98b88681488e49b5a2a940612615d18a" } }, { "快捷工具": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1564e8cbf5b84a8eb87e0fb2f65d2c66" } }, { "其他": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-beadc2efb7e54a62b0d4791c937c0a0d" } }, { "分析": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b14f60938ac84c0bbe36ab7ec313dd4e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5c87171c853b4112b8511973b28c3962" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/7.CSS \347\274\226\350\257\221/config.json" "b/data/2.web\344\270\255\351\230\266/7.CSS \347\274\226\350\257\221/config.json" index 3407cf95a3919655576413ce3c70fe407e0719d7..b9f95a3c6f1631c76c94082a64dbd983cdd7d2e8 100644 --- "a/data/2.web\344\270\255\351\230\266/7.CSS \347\274\226\350\257\221/config.json" +++ "b/data/2.web\344\270\255\351\230\266/7.CSS \347\274\226\350\257\221/config.json" @@ -1,4 +1,6 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [] + "node_id": "web-0c40cde5cd0d4a79b7d39d2ec6ab90ae", + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/8.web\345\256\211\345\205\250/1.https/config.json" "b/data/2.web\344\270\255\351\230\266/8.web\345\256\211\345\205\250/1.https/config.json" index f6416a1a57a86a638c71ad1c8742a38349a88fe3..0985cc2053a98810d4260381337222fe6e408cde 100644 --- "a/data/2.web\344\270\255\351\230\266/8.web\345\256\211\345\205\250/1.https/config.json" +++ "b/data/2.web\344\270\255\351\230\266/8.web\345\256\211\345\205\250/1.https/config.json" @@ -1,6 +1,8 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-2b71aa45a03a43c986164b63a53f2f3d", "keywords": [], "children": [], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/8.web\345\256\211\345\205\250/2.CORS/config.json" "b/data/2.web\344\270\255\351\230\266/8.web\345\256\211\345\205\250/2.CORS/config.json" index f6416a1a57a86a638c71ad1c8742a38349a88fe3..fb03714c3d4780013c4ea3d2e07db3d6bfc67016 100644 --- "a/data/2.web\344\270\255\351\230\266/8.web\345\256\211\345\205\250/2.CORS/config.json" +++ "b/data/2.web\344\270\255\351\230\266/8.web\345\256\211\345\205\250/2.CORS/config.json" @@ -1,6 +1,8 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-d080884b77f54de7ac451cee801106d0", "keywords": [], "children": [], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/8.web\345\256\211\345\205\250/3.\345\270\270\350\247\201web\346\224\273\345\207\273\346\212\200\346\234\257/config.json" "b/data/2.web\344\270\255\351\230\266/8.web\345\256\211\345\205\250/3.\345\270\270\350\247\201web\346\224\273\345\207\273\346\212\200\346\234\257/config.json" index ead3ea06ec15b7233c4ceda6d822102803925d0d..826f039755e792200d606e04a7b1bbc27c492887 100644 --- "a/data/2.web\344\270\255\351\230\266/8.web\345\256\211\345\205\250/3.\345\270\270\350\247\201web\346\224\273\345\207\273\346\212\200\346\234\257/config.json" +++ "b/data/2.web\344\270\255\351\230\266/8.web\345\256\211\345\205\250/3.\345\270\270\350\247\201web\346\224\273\345\207\273\346\212\200\346\234\257/config.json" @@ -1,25 +1,36 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-7c37be70d6824ac8b2ab827de63463a8", "keywords": [], "children": [ { "XSS(Cross-Site Scripting,跨站脚本攻击)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5dbf807919804b19bdaebfe0daa8e1e7" } }, { "SQL注入攻击": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cd7b005df7344d9e8e366cd76fd3b60c" } }, { "CSRFCross-Site Request Forgeries,跨站点请求伪造)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8586c65ab41243f7ba437e3f45d1ba92" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/8.web\345\256\211\345\205\250/config.json" "b/data/2.web\344\270\255\351\230\266/8.web\345\256\211\345\205\250/config.json" index 3407cf95a3919655576413ce3c70fe407e0719d7..b29bcda80159d5ea7b5f3807f1c0f4b8c44fe9b1 100644 --- "a/data/2.web\344\270\255\351\230\266/8.web\345\256\211\345\205\250/config.json" +++ "b/data/2.web\344\270\255\351\230\266/8.web\345\256\211\345\205\250/config.json" @@ -1,4 +1,6 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [] + "node_id": "web-6025adea26f24243b83608408f03994a", + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/9.\346\200\247\350\203\275\344\274\230\345\214\226/1.\346\214\207\346\240\207/config.json" "b/data/2.web\344\270\255\351\230\266/9.\346\200\247\350\203\275\344\274\230\345\214\226/1.\346\214\207\346\240\207/config.json" index 0b8062e3941725d5584d2c109f98f024bf44aca9..d08e174f518fe5e0bce865678aa8c2952d650931 100644 --- "a/data/2.web\344\270\255\351\230\266/9.\346\200\247\350\203\275\344\274\230\345\214\226/1.\346\214\207\346\240\207/config.json" +++ "b/data/2.web\344\270\255\351\230\266/9.\346\200\247\350\203\275\344\274\230\345\214\226/1.\346\214\207\346\240\207/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-27a3d0fba928488eaaee28b5e9237ad4", "keywords": [], "children": [ { @@ -9,28 +9,43 @@ { "First Contentful Paint (FCP)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d28b6c82ccc94a13a44b954f5e37a095" } }, { "Largest Contentful Paint (LCP)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8e92917ea3394c2284cc6bd14df64f92" } }, { "First Input Delay (FID)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-707e61f509b246c59de481e5dc914927" } }, { "Cumulative Layout Shift (CLS)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-77d2949cf0da4d2fb9a9c3cd69d7857d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-148790bc12df4ac194548889aebb59d8" } }, { @@ -40,18 +55,29 @@ { "Total Blocking Time (TBT)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4f02ca9a09b04e5796aed9a49e3014e4" } }, { "Time to Interactive (TTI)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1d7b7e87590b481d8099f3cdba51883b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0ae8aaa0693c44308bd31b056033ffa1" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/9.\346\200\247\350\203\275\344\274\230\345\214\226/2.\350\257\204\344\274\260\345\267\245\345\205\267/config.json" "b/data/2.web\344\270\255\351\230\266/9.\346\200\247\350\203\275\344\274\230\345\214\226/2.\350\257\204\344\274\260\345\267\245\345\205\267/config.json" index 00998734933054eaadb126d1c092a3c9a33eb523..9e5a69446cf9f8df8203b9e72ebc4368b0254b02 100644 --- "a/data/2.web\344\270\255\351\230\266/9.\346\200\247\350\203\275\344\274\230\345\214\226/2.\350\257\204\344\274\260\345\267\245\345\205\267/config.json" +++ "b/data/2.web\344\270\255\351\230\266/9.\346\200\247\350\203\275\344\274\230\345\214\226/2.\350\257\204\344\274\260\345\267\245\345\205\267/config.json" @@ -1,31 +1,45 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-583c544c7a5f4c108175d0a2fc333609", "keywords": [], "children": [ { "Chrome DevTools": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bc67e8a723e646cea50cbc4888fd2314" } }, { "LightHouse": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-62876b063c224aafbd75ac1e0235f249" } }, { "PageSpeed Insights": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e4c7c679281b4beab7359e8a38808ddf" } }, { "WebPageTest": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2dfdd323a6274823aef0cfaa0c7a9978" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/9.\346\200\247\350\203\275\344\274\230\345\214\226/3.\344\274\230\345\214\226\346\226\271\346\241\210/config.json" "b/data/2.web\344\270\255\351\230\266/9.\346\200\247\350\203\275\344\274\230\345\214\226/3.\344\274\230\345\214\226\346\226\271\346\241\210/config.json" index be1b36225e53900f49e62c4f9231b959dbdca355..dbc8fe22848bf9393901902e6ebeb6485e214c18 100644 --- "a/data/2.web\344\270\255\351\230\266/9.\346\200\247\350\203\275\344\274\230\345\214\226/3.\344\274\230\345\214\226\346\226\271\346\241\210/config.json" +++ "b/data/2.web\344\270\255\351\230\266/9.\346\200\247\350\203\275\344\274\230\345\214\226/3.\344\274\230\345\214\226\346\226\271\346\241\210/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-9a116eeb0e4d4247bc48392e91ee47c4", "keywords": [], "children": [ { @@ -9,28 +9,43 @@ { "代码压缩": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e7c7f1e514b440b7b14380fc33ccabed" } }, { "文本压缩(gzip、Brotli、Zopfli等)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d158b360c75b4e1089fa7ad02671c1d2" } }, { "Tree-shaking": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4930be46385241b99a3ac888629bcb72" } }, { "Code-splitting": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-11a35779c521471fabb0b48c1f1e862b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-509b612091ef4688a7f7996220880ec1" } }, { @@ -40,28 +55,43 @@ { "小图优化(css sprite、iconfont、dataURI、svg)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-334e812d87374afabe66aa579399aad5" } }, { "图片格式选择": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d3c11a32246a49e588ba713be33a5f88" } }, { "压缩(如tinypng)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-374a25b9bd80428da9a38c267c1f7581" } }, { "响应式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7daa15a588bb4b4893afe3560487d626" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7bfe3af1c97d4e3d868a4cddffbb6d69" } }, { @@ -71,64 +101,97 @@ { "懒加载": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1fa35bd0322844a5aa38d5f0a8a0f991" } }, { "DNS预解析、预加载、预渲染": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-57165f5bf1ab4e859803747f295a4e62" } }, { "离线化(ServiceWorker、AppCache、离线包等)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5a6e5ae9cdf34e989b92445043dedc16" } }, { "HTTP缓存": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f023f359d77a47c2b26a04a0717e4667" } }, { "数据缓存(localStorage、sessionStorage)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5ce05308a2024f66aa4918004d1fd7b9" } }, { "资源加载(顺序、位置、异步等)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f2539b4ed12c4d6c8994d45321000761" } }, { "请求合并": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0832cb45219c4900989008e268b295cd" } }, { "HTTP2": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-19d922daaebe4d098780410df503cbed" } }, { "CDN": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-61cc8cd75e084b52abf47360e0a3c705" } }, { "服务端渲染": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-131d2ddf91474914a916b07cd3bcf52d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e8a24a5de69f4e9082cbcb70ac4bae29" } }, { @@ -138,16 +201,25 @@ { "CSS代码优化(选择器、启用GPU、避免表达式等)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b94834ac6e7640138660d3d88c1210b9" } }, { "JS代码优化及评估": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-842bf5d8880d4188b45f3640dd4bfa12" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f8c5072cf1db44f4afee5eb71e2224aa" } }, { @@ -157,24 +229,38 @@ { "骨架屏": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-218f6b1b543843ac9546358eb93a1315" } }, { "Snapshot": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-16f4865015f148e39e289efcee8f166f" } }, { "Loading": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-61e7d8bf4a1d45079eb9042d131b0092" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-073c7544c8d746d3b773fbc12619d6e5" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/9.\346\200\247\350\203\275\344\274\230\345\214\226/config.json" "b/data/2.web\344\270\255\351\230\266/9.\346\200\247\350\203\275\344\274\230\345\214\226/config.json" index 3407cf95a3919655576413ce3c70fe407e0719d7..3c518f8504be3ef302d2aec90ce32d389aaeff52 100644 --- "a/data/2.web\344\270\255\351\230\266/9.\346\200\247\350\203\275\344\274\230\345\214\226/config.json" +++ "b/data/2.web\344\270\255\351\230\266/9.\346\200\247\350\203\275\344\274\230\345\214\226/config.json" @@ -1,4 +1,6 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [] + "node_id": "web-c5b34b286e5f48738b8a5150626a7a0b", + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.web\344\270\255\351\230\266/config.json" "b/data/2.web\344\270\255\351\230\266/config.json" index 3407cf95a3919655576413ce3c70fe407e0719d7..495ffcea99bda589e6a3436efaa36249825060a6 100644 --- "a/data/2.web\344\270\255\351\230\266/config.json" +++ "b/data/2.web\344\270\255\351\230\266/config.json" @@ -1,4 +1,6 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [] + "node_id": "web-cb674ce94c7042ac97d73a084646286a", + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/1.\345\211\215\347\253\257\346\236\266\346\236\204\346\250\241\345\274\217/1.MVC/config.json" "b/data/3.web\351\253\230\351\230\266/1.\345\211\215\347\253\257\346\236\266\346\236\204\346\250\241\345\274\217/1.MVC/config.json" index f6416a1a57a86a638c71ad1c8742a38349a88fe3..2f7bbd0088f774e5448fac5656d5d4275f2cf48b 100644 --- "a/data/3.web\351\253\230\351\230\266/1.\345\211\215\347\253\257\346\236\266\346\236\204\346\250\241\345\274\217/1.MVC/config.json" +++ "b/data/3.web\351\253\230\351\230\266/1.\345\211\215\347\253\257\346\236\266\346\236\204\346\250\241\345\274\217/1.MVC/config.json" @@ -1,6 +1,8 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-948cefb4e30142b98d76257458fa7007", "keywords": [], "children": [], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/1.\345\211\215\347\253\257\346\236\266\346\236\204\346\250\241\345\274\217/2.MVP/config.json" "b/data/3.web\351\253\230\351\230\266/1.\345\211\215\347\253\257\346\236\266\346\236\204\346\250\241\345\274\217/2.MVP/config.json" index f6416a1a57a86a638c71ad1c8742a38349a88fe3..718b1e824e3c21c216fe1c9dac21549ba10af195 100644 --- "a/data/3.web\351\253\230\351\230\266/1.\345\211\215\347\253\257\346\236\266\346\236\204\346\250\241\345\274\217/2.MVP/config.json" +++ "b/data/3.web\351\253\230\351\230\266/1.\345\211\215\347\253\257\346\236\266\346\236\204\346\250\241\345\274\217/2.MVP/config.json" @@ -1,6 +1,8 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-74eac20f5efc47a689efc63697688fd7", "keywords": [], "children": [], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/1.\345\211\215\347\253\257\346\236\266\346\236\204\346\250\241\345\274\217/3.MVVM/config.json" "b/data/3.web\351\253\230\351\230\266/1.\345\211\215\347\253\257\346\236\266\346\236\204\346\250\241\345\274\217/3.MVVM/config.json" index f6416a1a57a86a638c71ad1c8742a38349a88fe3..ca7af3945ab4f767cfb49d6e8a7dcfdfb7aaa62b 100644 --- "a/data/3.web\351\253\230\351\230\266/1.\345\211\215\347\253\257\346\236\266\346\236\204\346\250\241\345\274\217/3.MVVM/config.json" +++ "b/data/3.web\351\253\230\351\230\266/1.\345\211\215\347\253\257\346\236\266\346\236\204\346\250\241\345\274\217/3.MVVM/config.json" @@ -1,6 +1,8 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-79bd7662b5d1439da5f994f0237122e7", "keywords": [], "children": [], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/1.\345\211\215\347\253\257\346\236\266\346\236\204\346\250\241\345\274\217/config.json" "b/data/3.web\351\253\230\351\230\266/1.\345\211\215\347\253\257\346\236\266\346\236\204\346\250\241\345\274\217/config.json" index 3407cf95a3919655576413ce3c70fe407e0719d7..1d7f78aaa80e65187e43e2b62a9cbd5b76ef8fc4 100644 --- "a/data/3.web\351\253\230\351\230\266/1.\345\211\215\347\253\257\346\236\266\346\236\204\346\250\241\345\274\217/config.json" +++ "b/data/3.web\351\253\230\351\230\266/1.\345\211\215\347\253\257\346\236\266\346\236\204\346\250\241\345\274\217/config.json" @@ -1,4 +1,6 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [] + "node_id": "web-084bc51d7233449780840ddf3f000000", + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/2.vue.js/1.\351\201\207\350\247\201Vue.js/config.json" "b/data/3.web\351\253\230\351\230\266/2.vue.js/1.\351\201\207\350\247\201Vue.js/config.json" index 31ca9c194ff2cf333f6cf529ce7d00237473827b..4067e35b6bf432a381a876c2033505498342de9d 100644 --- "a/data/3.web\351\253\230\351\230\266/2.vue.js/1.\351\201\207\350\247\201Vue.js/config.json" +++ "b/data/3.web\351\253\230\351\230\266/2.vue.js/1.\351\201\207\350\247\201Vue.js/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-f521ce24a70c49baa351c9f52656bf69", "keywords": [], "children": [ { @@ -9,22 +9,34 @@ { "MVC": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f8374dcedf4041fd80f9fc34ec0eed17" } }, { "MVP": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-332f5057068c4c10ae3cfb73e562a189" } }, { "MVVM": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4de1e9c0e48843ab993f41d2424f6369" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f363da41063b45389149597e7d9409b7" } }, { @@ -34,24 +46,38 @@ { "Vue.js与其他框架的区别": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f4c49f33772948dda428a313988581d4" } }, { "如何使用Vue.js": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2b9ca2578dc94da9ba3c034c64900e41" } }, { "Vue.js的发展历史": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0a154c3c891242d6822adc37cfa0d9cb" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-564adef00b2b417cba34539bbbf265b1" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/2.vue.js/10.Vue\345\256\236\344\276\213\346\226\271\346\263\225/config.json" "b/data/3.web\351\253\230\351\230\266/2.vue.js/10.Vue\345\256\236\344\276\213\346\226\271\346\263\225/config.json" index c6fc1eed9c3ecb808c1a3fa034726e10fba64a66..f5ff376bfa1380d974437a4c1178f7a2ad80c86a 100644 --- "a/data/3.web\351\253\230\351\230\266/2.vue.js/10.Vue\345\256\236\344\276\213\346\226\271\346\263\225/config.json" +++ "b/data/3.web\351\253\230\351\230\266/2.vue.js/10.Vue\345\256\236\344\276\213\346\226\271\346\263\225/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-af8754d4381d409e93b2f584c57922c6", "keywords": [], "children": [ { @@ -9,24 +9,38 @@ { "组件树访问": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-99ab6079d471447bb118af9c8aeea1b1" } }, { "DOM访问": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-16a8cde1a1f341e1aa63b17972349084" } }, { "数据访问": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f75a044015c74920b1c116a92890b689" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c50232a148f14f61b54e9070b3fee824" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/2.vue.js/11.\347\273\204\344\273\266/config.json" "b/data/3.web\351\253\230\351\230\266/2.vue.js/11.\347\273\204\344\273\266/config.json" index 4be74a2f58b94289dbe44e04a3ed2b14f93cb19f..f1dcc707fe00c2670e28c3e616f86f3db2b5d65b 100644 --- "a/data/3.web\351\253\230\351\230\266/2.vue.js/11.\347\273\204\344\273\266/config.json" +++ "b/data/3.web\351\253\230\351\230\266/2.vue.js/11.\347\273\204\344\273\266/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-9d1bf11477b14f9997e26fdbaff2d3e0", "keywords": [], "children": [ { @@ -9,28 +9,43 @@ { "注册": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6b5894abff9c40a1bb164645453dde70" } }, { "数据传递": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-262d6cc6d28b4924b761f6e5329e3f27" } }, { "混合": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1fc044711b474af08d752adc96cb8a80" } }, { "动态组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9d1dd9e5b2594f9eb671dfe8dda6134d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4b88399eb2d0457d8e70d8cd8e889ec7" } }, { @@ -40,46 +55,70 @@ { "组件和v-for": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-85985a0734464b1b961dbd86383fd886" } }, { "编写可复用组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a8120a55e6c444969404e4b1c42cad7d" } }, { "异步组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-312c376d840c491bb3b03f9f67ffd7b9" } }, { "资源命名约定": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a1f4f2c6f5784f5481e94a94505d6167" } }, { "内联模板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-92192be4729b48bbbb55d95fef64c070" } }, { "片段实例": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-32e9b5d416314c0883ee5aacd56f66d7" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-818bc13d53104957acd2304c36227d6b" } }, { "生命周期": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-22e3e0f933e34262be185475808a2006" } }, { @@ -89,18 +128,29 @@ { "基础组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b849e6abb6734a878846a1de5e199ab9" } }, { "基于第三方组件开发": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dcf8be04d7d5431fafa0af55d310d77c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4e04cf95acb542fd84a1d4214c7d31f0" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/2.vue.js/12.\350\241\250\345\215\225\346\240\241\351\252\214/config.json" "b/data/3.web\351\253\230\351\230\266/2.vue.js/12.\350\241\250\345\215\225\346\240\241\351\252\214/config.json" index 8d4dab834a620923943ebb2347cf0ebecfa9a222..ab841edfca28774475fd81deb07de3f26b76feaf 100644 --- "a/data/3.web\351\253\230\351\230\266/2.vue.js/12.\350\241\250\345\215\225\346\240\241\351\252\214/config.json" +++ "b/data/3.web\351\253\230\351\230\266/2.vue.js/12.\350\241\250\345\215\225\346\240\241\351\252\214/config.json" @@ -1,23 +1,32 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-88e27a1f270e492bb71ea5e86d514815", "keywords": [], "children": [ { "安装": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9e680809546c4dceaf64b9ed7e43f8c0" } }, { "基本使用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-85d06dc988924431af8ec5176376b1fa" } }, { "验证结果结构": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8b1e4035449c46aaab11574d978df9ef" } }, { @@ -27,16 +36,25 @@ { "校验字段名field": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-26a3555c85aa4b80b0a51f3f963d63c3" } }, { "校验规则定义": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9e60965ce82c42ba9f8e457fd151c3a7" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1721ad7e7d954665bdefbd4fe678f745" } }, { @@ -46,58 +64,88 @@ { "required": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4385b9444002405989de88d5d440331a" } }, { "pattern": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b1ec6d9d60a240849ac023cec67f45fa" } }, { "minlength": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5bfa5bc3b08b4c5a93199d88220a78f9" } }, { "maxlength": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7903f08159794e53a4cde118d90e726b" } }, { "min": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-67928133a2654e6f958fa0de952db7f4" } }, { "max": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-79cbb2a18bdd4c8b9c4cbc2775ff2f21" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2ed6fa71d7b04ffb85a92017cd271a49" } }, { "与v-model同时使用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0185269f0ed14b59a85f8692ceb75d1d" } }, { "重置校验结果": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c90a2252856e49dca97737fc57e094bc" } }, { "表单元素": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a4f427a4611347c6a81b39d9611c071b" } }, { @@ -107,22 +155,34 @@ { "自定义校验状态class": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3712259e771645aba6a9a01e3dac3178" } }, { "在其他元素上使用校验状态class": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-67e65d0b51384160a8d0c5327af001ae" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-80ad85cb3c5e4cba824d54833373a5dc" } }, { "分组校验": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-00353a51aea64650a7a4e837d2ddada3" } }, { @@ -132,16 +192,25 @@ { "错误信息输出组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-28f0ca1590904ac698d35479332d2f47" } }, { "动态设置错误信息": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-40536824e51a461981be30991fb55f28" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3d34d3b6d7a4445698cecad52daf4eae" } }, { @@ -151,22 +220,34 @@ { "单个字段校验事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ff3c594d66d349709bbefc2f3e4e3cba" } }, { "整个表单校验事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-65450cef26ce4bf48be2e45fb798b8b7" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ba96691a70dd4328b94f299dcd43da51" } }, { "延迟初始化": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b7790ac27f9e42859194e89b5562a038" } }, { @@ -176,22 +257,34 @@ { "注册自定义验证器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d4b635e837794cee89719bf55f55a6fe" } }, { "错误信息": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-622bd71965564d4fbc1955d809dc097a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0ed832add2814581b881f39bb0e4ff0f" } }, { "自定义验证时机": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2ccd6aa270a74f28a18d55ccd7474098" } }, { @@ -201,18 +294,29 @@ { "注册异步验证器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ece76068df7d448fabfe406ec34d6abe" } }, { "验证器函数context": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4d7abebaee074fe3b68f4525473f4a24" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a8e63b7f61ad4b488fb3c1cc16916f3d" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/2.vue.js/13.\344\270\216\346\234\215\345\212\241\347\253\257\351\200\232\344\277\241/config.json" "b/data/3.web\351\253\230\351\230\266/2.vue.js/13.\344\270\216\346\234\215\345\212\241\347\253\257\351\200\232\344\277\241/config.json" index 1088fe51c93da2307a05140d0329b2d9a4e8a1e2..c1d9b3ce29af657a570d6295d492a08c55a4deaa 100644 --- "a/data/3.web\351\253\230\351\230\266/2.vue.js/13.\344\270\216\346\234\215\345\212\241\347\253\257\351\200\232\344\277\241/config.json" +++ "b/data/3.web\351\253\230\351\230\266/2.vue.js/13.\344\270\216\346\234\215\345\212\241\347\253\257\351\200\232\344\277\241/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-9f4b27c3b650470f8156d6ef5e2871c8", "keywords": [], "children": [ { @@ -9,70 +9,106 @@ { "安装": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5aab15fe16cb498f84269db2adf7b8f1" } }, { "参数配置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c0acc776f6b64ca5a21eab64278a853c" } }, { "headers配置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-52240fa1a49f4b34a600bf0e7c00598b" } }, { "基本调用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-470019b8f02644e79301c809d888ba59" } }, { "请求选项对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f2c8b4f520d5414aae0a66273b181331" } }, { "response对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4b88fdd678704f06a95fa86dc440ea76" } }, { "RESTful调用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-573d69af6bce40f593bd4351513ec90c" } }, { "拦截器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c368c84d3bf94137b99c62ead32b0a24" } }, { "跨域AJAX": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-08b10bb647804164a472456f8184654a" } }, { "Promise": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ec7fb51301e54afbb6136b745ca18c98" } }, { "url模板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6062e0729bd4483b99b92de376604ddd" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-234e59e9b37b404ea6013f68113dca66" } }, { @@ -82,16 +118,25 @@ { "安装": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-875f377b1e3c4f8b8c8d77d9b631c1ac" } }, { "使用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0bb8d2bc1b814465877eadf9e5a8271c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-07f052e6c52443ff949967bffb847450" } }, { @@ -101,30 +146,47 @@ { "如何发送JSONP请求": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cc873ba1023549c3bb27bc83e9932ab3" } }, { "如何修改发送给服务端的数据类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d46522ff84774aa886789f7c682036b4" } }, { "跨域请求出错": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-212a02ddfc49459e93355c050861ccbb" } }, { "$..post方法变为OPTIONS方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-321590eb4d1c49bf9ba583137062bebe" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5aa857dee9924e12b56a45bc86604afd" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/2.vue.js/14.\350\267\257\347\224\261\344\270\216\350\247\206\345\233\276/config.json" "b/data/3.web\351\253\230\351\230\266/2.vue.js/14.\350\267\257\347\224\261\344\270\216\350\247\206\345\233\276/config.json" index 4f2d9d90797d694f976362d52f751f3feba18856..28c401506a21922bff2b5543a42c361695e00dc4 100644 --- "a/data/3.web\351\253\230\351\230\266/2.vue.js/14.\350\267\257\347\224\261\344\270\216\350\247\206\345\233\276/config.json" +++ "b/data/3.web\351\253\230\351\230\266/2.vue.js/14.\350\267\257\347\224\261\344\270\216\350\247\206\345\233\276/config.json" @@ -1,17 +1,23 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-effe7e856002479d906d245be202b15b", "keywords": [], "children": [ { "如何安装": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a50cf61318a5439fbcbb3f4e70815d2a" } }, { "基本使用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2b93b25314f34ef4b34f30be682f1492" } }, { @@ -21,22 +27,34 @@ { "v-link": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e7c17e7964184fe6a7088cfbadd3589f" } }, { "router-view": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d36fe201431d4b0aaa560844b33bdc97" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c3b0d3591b7b4058a40f2b87703c5192" } }, { "路由实例": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-605926ac4916472bb126ac1dd475aada" } }, { @@ -46,16 +64,25 @@ { "路由切换的各个阶段": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-990e7d3a77e548019ca9b22496244fa6" } }, { "各阶段的钩子函数介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-88c9e92eb90a47dbbd3e35ccabdb1361" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b2755ba182224020904ffa5ca6f13337" } }, { @@ -65,48 +92,74 @@ { "动态片段": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1ff6af9963a34718a1061f1421bc01c1" } }, { "全匹配片段": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-eb6a2a5949b448c783cf8c2ee764c0ca" } }, { "具名路径": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b79b17f57ffd4537a7d52c97f944e511" } }, { "路由对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0445d8ec275f430e8e3fc9b42a622fc7" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b7bcd699a5d74eb2a7f9211f9cd68041" } }, { "transition对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b939cd46f59240e4ae4d89c985e59280" } }, { "嵌套路由": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-56d17212d7284bf8946fb5b74cb1840e" } }, { "动态加载路由组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c9be451683f748afaae5571456d9e4c5" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/2.vue.js/15.vue-cli/config.json" "b/data/3.web\351\253\230\351\230\266/2.vue.js/15.vue-cli/config.json" index 9333bc52c54a5e9f8e583c7f3f269a0a80450641..bf915e80206b82a28c47f83fc9bf015519eb55b3 100644 --- "a/data/3.web\351\253\230\351\230\266/2.vue.js/15.vue-cli/config.json" +++ "b/data/3.web\351\253\230\351\230\266/2.vue.js/15.vue-cli/config.json" @@ -1,17 +1,23 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-4e725446588d4ad4985296242f643244", "keywords": [], "children": [ { "安装": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d880dd2c7852493dbe5a45f362e4a72c" } }, { "基本使用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-01d66d5406dd411fa6bd54e60d9cb4df" } }, { @@ -21,16 +27,25 @@ { "init": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c08991284f004eb9802631e612490df6" } }, { "list": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-87f44db58e864fd3b2a483681b75e6c8" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-86278b48e9de478aa4145861e554b4e3" } }, { @@ -40,22 +55,34 @@ { "官方模板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-59837f469d6c43d498a39ad2ce1f1ec4" } }, { "自定义模板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1ba63b085424459db64efdc2aaa65f1a" } }, { "本地模板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-22e1b4d1fbd242168c12ca24ea6ddeca" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b1b954a7aca3479ca27f1c78f2dbe5c6" } }, { @@ -65,30 +92,47 @@ { "mander": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-27ef990d17624c1e94dcc3546e13616f" } }, { "download-git-repo": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f07ddcd35aac4ee989c1182ac57bc2a0" } }, { "inquirer": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-79fcf57aade140929ecbefc49a57f3e0" } }, { "ora": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6bc4eb76741144a4b0530d3f955abb75" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b79d83fcc10842669ebe4afb1b72cb55" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/2.vue.js/16.\346\265\213\350\257\225\345\274\200\345\217\221\344\270\216\350\260\203\350\257\225/config.json" "b/data/3.web\351\253\230\351\230\266/2.vue.js/16.\346\265\213\350\257\225\345\274\200\345\217\221\344\270\216\350\260\203\350\257\225/config.json" index 19c9b8e9328c611c8c24b70a69ba8e94ade9feca..689c77e20901f59ed57fa71bc65c2cd51bd1506e 100644 --- "a/data/3.web\351\253\230\351\230\266/2.vue.js/16.\346\265\213\350\257\225\345\274\200\345\217\221\344\270\216\350\260\203\350\257\225/config.json" +++ "b/data/3.web\351\253\230\351\230\266/2.vue.js/16.\346\265\213\350\257\225\345\274\200\345\217\221\344\270\216\350\260\203\350\257\225/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-aa0884fcd1f04a588c17de8613a0fe7b", "keywords": [], "children": [ { @@ -9,16 +9,25 @@ { "ESLint": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-76c07dce5a304023b7adfe0d24cd1eab" } }, { "工具包": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f680c9da9b594070a62d15b23ee8eab8" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-52fd7d78691246efb98e602ae65315e7" } }, { @@ -28,30 +37,47 @@ { "Vue Syntax Highlight": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e025c4c44fda47b78e79067cdc0df9ad" } }, { "Snippets": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8a040059b7c34689b7210c5defe2bc71" } }, { "其他编辑器和IDE": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e9b5711bf01340d29c73d74903d6b51a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4d11be0608804a0b9cffa1acf75cb8bd" } }, { "调试工具": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9631122748e64df08b25cf9481350376" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/2.vue.js/17.Scrat Vue.js\347\232\204\345\214\226\345\255\246\345\217\215\345\272\224/config.json" "b/data/3.web\351\253\230\351\230\266/2.vue.js/17.Scrat Vue.js\347\232\204\345\214\226\345\255\246\345\217\215\345\272\224/config.json" index 6cb65d87aac33d0d2a3d7c27b297997cc4d6ec12..22536f7fee045eb158f5ef0ee4dd890fd1040fa3 100644 --- "a/data/3.web\351\253\230\351\230\266/2.vue.js/17.Scrat Vue.js\347\232\204\345\214\226\345\255\246\345\217\215\345\272\224/config.json" +++ "b/data/3.web\351\253\230\351\230\266/2.vue.js/17.Scrat Vue.js\347\232\204\345\214\226\345\255\246\345\217\215\345\272\224/config.json" @@ -1,29 +1,41 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-d7f6cf8f57de4d28ab28c47cc13f569c", "keywords": [], "children": [ { "浅谈前端工程化": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9a14c61e01a246058502507e6f7c8793" } }, { "前端工程化怎么做": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-eaf44cc897094c30bf9ac12372c20fe8" } }, { "Scrat简介": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-431c13e0ec7a4463a2620400e2fcbe5f" } }, { "Scrat Vue.js实现组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-62ec46593ea244fd85de6ed2cb56cce9" } }, { @@ -33,24 +45,38 @@ { "准备工作": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-953e1eed51074ddb95b11d9afd0e486a" } }, { "代码实现": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1599019f672342038ce2237c450fd2c3" } }, { "编译和发布": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4157f6527e7a4f69b5be89186e7e364d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-686985df0f744afc89f217ddf03c4c92" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/2.vue.js/18.Vue.js 2.0/config.json" "b/data/3.web\351\253\230\351\230\266/2.vue.js/18.Vue.js 2.0/config.json" index d617a2eaca7fea6f4be87368ae71fc1a6e5ab99b..520aa899d35c324e592d60210b2235cd858184a0 100644 --- "a/data/3.web\351\253\230\351\230\266/2.vue.js/18.Vue.js 2.0/config.json" +++ "b/data/3.web\351\253\230\351\230\266/2.vue.js/18.Vue.js 2.0/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-85c64d44c5294daebcdade900500a049", "keywords": [], "children": [ { @@ -9,52 +9,79 @@ { "全局配置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ed58559244c3463ea672ea39fb0693d5" } }, { "全局API": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3c820cd15f2b45e8a021f9e3d4e22d00" } }, { "VM选项": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-620891a8f12a405f905c5158bb9d31b0" } }, { "实例属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b5eb7f522f484d2abd80a91f94b562b3" } }, { "实例方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cd09cf1374204958bbac952083788380" } }, { "指令": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-718d64abddb44b98968326cde4e1ef2e" } }, { "特殊元素": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-105ac7f64f324b108534ed2dc4120220" } }, { "服务端渲染": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-73259bf211224d29ac84fbfa4a85c33b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8a108d06b91a4832a77edd64972c1d8b" } }, { @@ -64,16 +91,25 @@ { "认识Virtual DOM": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0461ae46f21d45e28f52bdfca043444e" } }, { "Virtual DOM在Vue.js 2.0中的实现": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fdef296cc9ed4d658f6991822d51722a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bcc722c05d38447394aa6899143b4d39" } }, { @@ -83,18 +119,29 @@ { "普通服务端渲染": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6e69fd676885402f9fccaead4ce4580a" } }, { "流式服务端渲染": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d910ccd5ef5244c686efccafbeea4eb6" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-153266d0d50948cc8af7d812f06c5726" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/2.vue.js/19.\346\272\220\347\240\201\347\257\207\342\200\224\342\200\224util/config.json" "b/data/3.web\351\253\230\351\230\266/2.vue.js/19.\346\272\220\347\240\201\347\257\207\342\200\224\342\200\224util/config.json" index 81fb8d37333c9cff73fe4f0822c07b1f7c92d557..295f6a2272252c2ac26dc66169b666c0ae3c8635 100644 --- "a/data/3.web\351\253\230\351\230\266/2.vue.js/19.\346\272\220\347\240\201\347\257\207\342\200\224\342\200\224util/config.json" +++ "b/data/3.web\351\253\230\351\230\266/2.vue.js/19.\346\272\220\347\240\201\347\257\207\342\200\224\342\200\224util/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-8a919ae06d844aa0af500a74254ac055", "keywords": [], "children": [ { @@ -9,34 +9,52 @@ { "系统判断": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-081cd128d04f41669f760b1416adfd9d" } }, { "属性支持": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a30e083b5177492f8aa96bebc2934ff2" } }, { "过渡属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a88869bae8814ada8b35ce335e3bd9fa" } }, { "nextTick": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a64222497ef041e2b8d2f838086e3e98" } }, { "set": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-14cc64534bad4f10a8ba1d3dcd615749" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b3d9ff6c54674acdaa11c8672c213913" } }, { @@ -46,34 +64,52 @@ { "dom操作": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-723f3f03936d48bbbbcadcdd36306c69" } }, { "属性操作": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7efffccb07ca4aa8ad2a12bf96c737a7" } }, { "class操作": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-831d0681326e41688fc057efe6a3f0b8" } }, { "事件操作": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-64d0e37674a5427c9019d511e37654c2" } }, { "其他": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-42403e247ed4430e89c2d6f32fde4926" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b659fb2a4c814982aa66bcf7c7f137c8" } }, { @@ -83,60 +119,92 @@ { "对象操作": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7e749b50cf6e486ebba6cf7a46deeeee" } }, { "名称转换": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6904cac22fba488398c1800e1fc7f47e" } }, { "数组操作": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6e7278a44794462aa5c703547832dea0" } }, { "类型转换": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7e2839b504dc4937bb4cb6269219a5d5" } }, { "方法绑定": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c6bd0fd3cc2647ffab43847c70e9ec43" } }, { "其他": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2e25778a2c104c31bb312a4fac8b7e6e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2adf72ee2b4d43828a6c6ab70da20f43" } }, { "ponents": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-48e299f88fc9441498441b58c4e3c920" } }, { "options": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4eba9cb298fb45faabf0b5e2e2a42a13" } }, { "debug": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-99f2d4b3c3f44a51a0c609c8a96e671c" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/2.vue.js/2.\346\225\260\346\215\256\347\273\221\345\256\232/config.json" "b/data/3.web\351\253\230\351\230\266/2.vue.js/2.\346\225\260\346\215\256\347\273\221\345\256\232/config.json" index 4bc9caa3772258cccdc1d7215c63a3fa32baeb96..b8fa1c8dd609c79a17bf333e270a5908ab66f5b4 100644 --- "a/data/3.web\351\253\230\351\230\266/2.vue.js/2.\346\225\260\346\215\256\347\273\221\345\256\232/config.json" +++ "b/data/3.web\351\253\230\351\230\266/2.vue.js/2.\346\225\260\346\215\256\347\273\221\345\256\232/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-5272bce7aae540808e77d9e6cd4a405b", "keywords": [], "children": [ { @@ -9,30 +9,47 @@ { "插值": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-833f5ad69a2640f19fe5c350b8c2b795" } }, { "表达式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7f2d23e16df84739b48db9867ac5c8e6" } }, { "指令": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0200769f17824e56b7c9718af0cc64e2" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-058ab57d5379401ea45559aec3b9a670" } }, { "分隔符": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6697f5e41004448e8ba02cf4f38c421f" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/2.vue.js/20.\346\272\220\347\240\201\347\257\207\342\200\224\342\200\224\346\267\261\345\205\245\345\223\215\345\272\224\345\274\217\345\216\237\347\220\206/config.json" "b/data/3.web\351\253\230\351\230\266/2.vue.js/20.\346\272\220\347\240\201\347\257\207\342\200\224\342\200\224\346\267\261\345\205\245\345\223\215\345\272\224\345\274\217\345\216\237\347\220\206/config.json" index fdaea5b3617dcef2fb84d02bce78f674c91deca0..513e46b8599e25398cf7b893b15f5f888960dbe9 100644 --- "a/data/3.web\351\253\230\351\230\266/2.vue.js/20.\346\272\220\347\240\201\347\257\207\342\200\224\342\200\224\346\267\261\345\205\245\345\223\215\345\272\224\345\274\217\345\216\237\347\220\206/config.json" +++ "b/data/3.web\351\253\230\351\230\266/2.vue.js/20.\346\272\220\347\240\201\347\257\207\342\200\224\342\200\224\346\267\261\345\205\245\345\223\215\345\272\224\345\274\217\345\216\237\347\220\206/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-d240a262ad5a469aa20197286264a8b0", "keywords": [], "children": [ { @@ -9,48 +9,74 @@ { "Observer": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9a75ae8122ee40a5806fdbab6e3c6bf5" } }, { "Directive": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bd7985af3d6b4a2eb58186ed2e748320" } }, { "Watcher": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7ecd81e8699741cab66ad3da8184d20c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b3bb431fe41740b0be9b86c62223c33b" } }, { "变化检测问题": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-682aa198e75d4ebaa28e83a6247539f5" } }, { "初始化数据": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c7769455a6e044aea99e78b6aafeb793" } }, { "异步更新队列": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-74a35a7d9018406385fb75cff7458eae" } }, { "计算属性的奥秘": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-37f408bf8f61401d85e6821d22ee08d0" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/2.vue.js/21.\346\272\220\347\240\201\347\257\207\342\200\224\342\200\224\347\210\266\345\255\220\347\261\273\345\220\210\345\271\266\347\255\226\347\225\245/config.json" "b/data/3.web\351\253\230\351\230\266/2.vue.js/21.\346\272\220\347\240\201\347\257\207\342\200\224\342\200\224\347\210\266\345\255\220\347\261\273\345\220\210\345\271\266\347\255\226\347\225\245/config.json" index 6cddf7419c1a0a82d2908bf928cc0af3562ed4de..94be0c64142fd0085e4756a6f49cf22e47c80bd7 100644 --- "a/data/3.web\351\253\230\351\230\266/2.vue.js/21.\346\272\220\347\240\201\347\257\207\342\200\224\342\200\224\347\210\266\345\255\220\347\261\273\345\220\210\345\271\266\347\255\226\347\225\245/config.json" +++ "b/data/3.web\351\253\230\351\230\266/2.vue.js/21.\346\272\220\347\240\201\347\257\207\342\200\224\342\200\224\347\210\266\345\255\220\347\261\273\345\220\210\345\271\266\347\255\226\347\225\245/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-058c130ebeb34b4bac1c0fc1dc8af7fd", "keywords": [], "children": [ { @@ -9,24 +9,38 @@ { "生命周期合并策略": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c0f9d8faf2c14bb595995356ed0f4817" } }, { "属性方法计算": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-362ffb6b60f645699d771b3f2471ab27" } }, { "数据合并策略": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-eca219a173ac4131b3ca97abdb9d40bf" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4eb58f3deee845f29442c661e2ec103e" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/2.vue.js/22.\346\272\220\347\240\201\347\257\207\342\200\224\342\200\224\347\274\223\345\255\230/config.json" "b/data/3.web\351\253\230\351\230\266/2.vue.js/22.\346\272\220\347\240\201\347\257\207\342\200\224\342\200\224\347\274\223\345\255\230/config.json" index 23ea3ff2cc6e61d6c435f656b8fcdc73ba656fbb..2433d8236858398d9c91512a386ae791f00610d3 100644 --- "a/data/3.web\351\253\230\351\230\266/2.vue.js/22.\346\272\220\347\240\201\347\257\207\342\200\224\342\200\224\347\274\223\345\255\230/config.json" +++ "b/data/3.web\351\253\230\351\230\266/2.vue.js/22.\346\272\220\347\240\201\347\257\207\342\200\224\342\200\224\347\274\223\345\255\230/config.json" @@ -1,43 +1,63 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-e6a8b177a49a451aa69cf8013b5e8caa", "keywords": [], "children": [ { "Cache有什么用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ff50ea1d819f451caed1c1e29f07d0c1" } }, { "LRU": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-81e0d17e186a4ae79716debde5655992" } }, { "Cache类": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-12620dc38b774f028cc70588017ca56a" } }, { "put": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8740120dae1d41f5a1d3e70c36160acd" } }, { "shift": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0ebc5b792d1542ad89b4f276bc173bb1" } }, { "get": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ec3f2fe9907d4226ae0049024f8c5342" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/2.vue.js/23.\346\272\220\347\240\201\347\257\207\342\200\224\342\200\224\345\261\236\346\200\247props/config.json" "b/data/3.web\351\253\230\351\230\266/2.vue.js/23.\346\272\220\347\240\201\347\257\207\342\200\224\342\200\224\345\261\236\346\200\247props/config.json" index a69469e14a8223e0bc2b440ffb3a081dec81d19e..5bcc74b6c1202290340eb6acb9046312b04cac47 100644 --- "a/data/3.web\351\253\230\351\230\266/2.vue.js/23.\346\272\220\347\240\201\347\257\207\342\200\224\342\200\224\345\261\236\346\200\247props/config.json" +++ "b/data/3.web\351\253\230\351\230\266/2.vue.js/23.\346\272\220\347\240\201\347\257\207\342\200\224\342\200\224\345\261\236\346\200\247props/config.json" @@ -1,43 +1,63 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-a22a3d3e483d45c4ad8501a0127fce20", "keywords": [], "children": [ { "流程设计": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-56149b150ae14809abdc1d382fb155c3" } }, { "属性name": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-87ac7a8d196341a38d71c11edfcc48fb" } }, { "coerce": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-634ea642f6384f978b7a5971c5246802" } }, { "type 验证": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d4742bdb2c80472f8de2621bbc88e163" } }, { "default": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fc4807df02fb4a17a85f112b97cf6fef" } }, { "validator": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4a2049e9e95e4cea903c450706f62d7f" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/2.vue.js/24.\346\272\220\347\240\201\347\257\207\342\200\224\342\200\224events/config.json" "b/data/3.web\351\253\230\351\230\266/2.vue.js/24.\346\272\220\347\240\201\347\257\207\342\200\224\342\200\224events/config.json" index 2a9af631269f13d1ec6616bf336924d5fb20521a..7aceca8a6e2a6ade544c5dea36d4b265b323101a 100644 --- "a/data/3.web\351\253\230\351\230\266/2.vue.js/24.\346\272\220\347\240\201\347\257\207\342\200\224\342\200\224events/config.json" +++ "b/data/3.web\351\253\230\351\230\266/2.vue.js/24.\346\272\220\347\240\201\347\257\207\342\200\224\342\200\224events/config.json" @@ -1,11 +1,14 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-53feafb44474464e9c71013bc8b22f10", "keywords": [], "children": [ { "events配置是什么": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-56c5e1d1c8f04f069a0daa08bf9653ba" } }, { @@ -15,36 +18,56 @@ { "$emit触发": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-80020ea53f8d4d0e950e221bcee55a4d" } }, { "$once 绑定": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cff41f97e21d493889fd6fd22219f758" } }, { "$off删除": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9f08c8e56c354281a2f34a8eb2d06e95" } }, { "$dispatch派发": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4e6a8142eab44fd99a604110dda21e3b" } }, { "$broadcast广播": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bba72e84599d432792ca4e1ba0943e55" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7dbe6386a49b410cb5e4e80af73faff0" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/2.vue.js/3.\346\214\207\344\273\244/config.json" "b/data/3.web\351\253\230\351\230\266/2.vue.js/3.\346\214\207\344\273\244/config.json" index 1eef2eb3b1594c234eae93830e406ca50134d610..82e64bf74c809f46773a649c11b1d0ccf7cbdd77 100644 --- "a/data/3.web\351\253\230\351\230\266/2.vue.js/3.\346\214\207\344\273\244/config.json" +++ "b/data/3.web\351\253\230\351\230\266/2.vue.js/3.\346\214\207\344\273\244/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-00b74124a9b941e182eb012e060a6306", "keywords": [], "children": [ { @@ -9,88 +9,133 @@ { "v-if": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6f0147efe66c4dc590cc143101ae6d04" } }, { "v-show": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8bc8bd733956431eb6f3462611542d78" } }, { "v-else": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3f94661b6ae84e58acc1215ccbe21848" } }, { "v-model": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-81c0c919ee864117872815363c7a01a8" } }, { "v-repeat": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-88c07ed136f84afbaed67ff5c1b4cbee" } }, { "v-for": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-abbaafafb4144bdba59c56bf7750ae3a" } }, { "v-text": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1300440774104374bc6a15f37c99792c" } }, { "v-": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-11700c60bbfe4ef7a21a7cad738ac9d0" } }, { "v-bind": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-995322413d72474485d7a7023df23dfa" } }, { "v-on": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7f606c723fea4c96b8eb8e9ab071d92d" } }, { "v-ref": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-eb4c2fbc473c4cb8be38809e9a49d361" } }, { "v-el": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-19919b57e2324e068b26a39b608e8058" } }, { "v-pre": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-145dd5db61d945439286e2de2f9868d0" } }, { "v-cloak": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a275ce804d4547e79f4cea5a33215927" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-30a7c9b78b4f42d49e4d3fb426535ec9" } }, { @@ -100,24 +145,38 @@ { "基础": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b76724a8ecdd46f49cb038b10a9d1038" } }, { "高级选项": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e4ec42a9e45b457e8c3ae0789497ed4c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bf4ebb9604214d36bf3b9a1411a5b0b5" } }, { "内部指令解析": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-033f7993f2eb4808a38eea538a09ad77" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/2.vue.js/4.\350\256\241\347\256\227\345\261\236\346\200\247/config.json" "b/data/3.web\351\253\230\351\230\266/2.vue.js/4.\350\256\241\347\256\227\345\261\236\346\200\247/config.json" index d2479dd6127a65441217d34bc1d160d2d74c207c..274ed3fdab905ce9ce04b06ba47af47d5a68c661 100644 --- "a/data/3.web\351\253\230\351\230\266/2.vue.js/4.\350\256\241\347\256\227\345\261\236\346\200\247/config.json" +++ "b/data/3.web\351\253\230\351\230\266/2.vue.js/4.\350\256\241\347\256\227\345\261\236\346\200\247/config.json" @@ -1,17 +1,23 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-665f1723669145e9867a9e6fa9d5272e", "keywords": [], "children": [ { "什么是计算属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8dd373f87990404fabb9a26c1324a8c8" } }, { "计算属性缓存": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b8386c3280964f508e9ea5614a42a1c2" } }, { @@ -21,18 +27,29 @@ { "计算属性getter不执行的场景": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8f68a06304ed4cb8abf556e7ccbd5b0f" } }, { "在v-repeat中使用计算属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ae44dcb3a2b74705b95921878c32f091" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8fec63c359404bf790300af80ba8bb79" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/2.vue.js/5.\350\241\250\345\215\225\346\216\247\344\273\266\347\273\221\345\256\232/config.json" "b/data/3.web\351\253\230\351\230\266/2.vue.js/5.\350\241\250\345\215\225\346\216\247\344\273\266\347\273\221\345\256\232/config.json" index db2c792c2580a224ad077c35e3e510a37897c88f..cdcbe11d388e970da74a480b0fd03d55c36971f9 100644 --- "a/data/3.web\351\253\230\351\230\266/2.vue.js/5.\350\241\250\345\215\225\346\216\247\344\273\266\347\273\221\345\256\232/config.json" +++ "b/data/3.web\351\253\230\351\230\266/2.vue.js/5.\350\241\250\345\215\225\346\216\247\344\273\266\347\273\221\345\256\232/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-211f72c58a514b51ba6f6e373f749ba9", "keywords": [], "children": [ { @@ -9,34 +9,52 @@ { "text": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f1a5f020006940cab817651429c8ccaf" } }, { "checkbox": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a8af4e336f6f4955ae51293988cf3505" } }, { "radio": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-40d17e0fd9af471799a12d3c8b2c13b4" } }, { "select": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cf0b2c7153a947f5be3fe27d450cbd1d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6f9d1e9b52124fc785885a971c9c21d6" } }, { "值绑定": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-df7ec32c46834e429219919037cf7ad7" } }, { @@ -46,22 +64,34 @@ { "lazy": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8cb329795bc440e18379849d9a69e8dc" } }, { "debounce": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fd37ecfda8cc40d2896449213155ffc8" } }, { "number": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9adc942ab2124c30bca83ac679b92db5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2ab19c3798334da7b47b812a73b57cbd" } }, { @@ -71,24 +101,38 @@ { "lazy源码解析": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e12ed240b11144059657731509e7038c" } }, { "debounce源码解析": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-096cce4c7353458ab0f226d3f5d0448c" } }, { "number源码解析": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b7187255dfe84e5384a6950a961b597a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c7b715e999184f91b60702a52051db19" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/2.vue.js/6.\350\277\207\346\273\244\345\231\250/config.json" "b/data/3.web\351\253\230\351\230\266/2.vue.js/6.\350\277\207\346\273\244\345\231\250/config.json" index a9ed5eeb23f56cc183dc86b5ad3f7012c2c6cf1b..d85ba7ee0be13d0acb842bd7d63641d8e53942fc 100644 --- "a/data/3.web\351\253\230\351\230\266/2.vue.js/6.\350\277\207\346\273\244\345\231\250/config.json" +++ "b/data/3.web\351\253\230\351\230\266/2.vue.js/6.\350\277\207\346\273\244\345\231\250/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-2f8e4ae4dae04658985a25f1ac9d07db", "keywords": [], "children": [ { @@ -9,34 +9,52 @@ { "字母操作": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2c287cc0b8ea4812bdd79aef63cba110" } }, { "json过滤器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-409783c10af74f248c3ceea6ff857b54" } }, { "限制": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-250e1ac01fa948249a2131f2e27b0554" } }, { "currency过滤器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f56952ffe0dd4362826b86afaceb7eb6" } }, { "debounce过滤器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-55e79f71d6b7470f8ce0def1a229c70a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f3a73c7169f641ef815868b69c63f35c" } }, { @@ -46,16 +64,25 @@ { "fillter语法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c81ca884d51b473185bcf2f6e1086828" } }, { "教你写一个filter": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-681c08d6f92b4e51839da0fece8cc594" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7c44b78fa51c4738b2ad5d26423ca779" } }, { @@ -65,18 +92,29 @@ { "管道实现": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0874cdf9da994ed8922a49a113a4ab55" } }, { "过滤器解析": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9c90e3683cee4f41b02f3a1eede15c27" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-596f58749e7d444ab6c77babd0663096" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/2.vue.js/7.Class\344\270\216Style\347\273\221\345\256\232/config.json" "b/data/3.web\351\253\230\351\230\266/2.vue.js/7.Class\344\270\216Style\347\273\221\345\256\232/config.json" index d787d9f5351d38b9dfcedb0f93dc5cc2d876f66e..c824fee28e116be0c2eb0557812068cbfa3cfabe 100644 --- "a/data/3.web\351\253\230\351\230\266/2.vue.js/7.Class\344\270\216Style\347\273\221\345\256\232/config.json" +++ "b/data/3.web\351\253\230\351\230\266/2.vue.js/7.Class\344\270\216Style\347\273\221\345\256\232/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-93d219854a6c4db599151f21f85ac5d6", "keywords": [], "children": [ { @@ -9,16 +9,25 @@ { "对象语法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-47365073f8e74b34bc6f68744a17a5a2" } }, { "数组语法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8f54e30a4fa040158c80c7dd21bfb4b5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9177dc4548ed43a59bbace9f02bd564b" } }, { @@ -28,24 +37,38 @@ { "对象语法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2e1aae8c89794927b0bafe0243494262" } }, { "数组语法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-28d3ce907cab428eb2ef9f8365d78fcb" } }, { "自动添加前缀": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f037e476ed3448d883789e318c994ad5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-25ba5d774c9c4439bee0de7174cdca55" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/2.vue.js/8.\350\277\207\346\270\241/config.json" "b/data/3.web\351\253\230\351\230\266/2.vue.js/8.\350\277\207\346\270\241/config.json" index a2cd54b83e92c53cde5b1795889b5942c8ff04f7..9fe78b23874bcf6b70e45fb1fc9e887803da8f1b 100644 --- "a/data/3.web\351\253\230\351\230\266/2.vue.js/8.\350\277\207\346\270\241/config.json" +++ "b/data/3.web\351\253\230\351\230\266/2.vue.js/8.\350\277\207\346\270\241/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-ff0fdf5ac7f04404913232d673c89690", "keywords": [], "children": [ { @@ -9,48 +9,74 @@ { "内置Class类名": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-30347ecf8cf8458181f0e4303dca851e" } }, { "自定义CSS类名": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-db4a4092c2df41c6bdc0bf846a393524" } }, { "显式声明CSS过渡类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3738020154e749afaa598cc929175f30" } }, { "动画案例": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a1ca3f0d79a44b79b26aa79854036a44" } }, { "过渡流程": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5d302b6c654c42c2a4dfd25c0cb36e9c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-91d5a6cfadcd4ed48559ba4c683b3ee5" } }, { "JavaScript过渡": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b35fd3cf04784d209377c81fccc25408" } }, { "渐进过渡": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d78407c7f53345d8ac82e815eeb82ce8" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/2.vue.js/9.Method97/config.json" "b/data/3.web\351\253\230\351\230\266/2.vue.js/9.Method97/config.json" index 3dd73c259031528b7c3e6c088d1262369068fc99..e68dffb807de5e7aae7c2a789b579b53b74d4c09 100644 --- "a/data/3.web\351\253\230\351\230\266/2.vue.js/9.Method97/config.json" +++ "b/data/3.web\351\253\230\351\230\266/2.vue.js/9.Method97/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-00f5c6d35d384e12a0bba93f050e8f02", "keywords": [], "children": [ { @@ -9,22 +9,34 @@ { "内联方式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3a748ef836bf4f6aaad70f6ad09b85f4" } }, { "methods配置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7a70cc3c22124985b51a7018b550ce9f" } }, { "$events应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-420c1d4a707c4550b2e2403ef419dbaf" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c6acdb4d22f04646bac403710f3bf29b" } }, { @@ -34,34 +46,52 @@ { "prevent": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b85c8faddb9744908e320b7bc93f490f" } }, { "s00": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2c45c78b106f4ed4813abe6998e42508" } }, { "capture": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-af80baa913224bfaafde0e077c5e1714" } }, { "self": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-be3d6abc0f944b77acf7d8a49b4c4f94" } }, { "按键": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-52100eca5b4441518f35a0446d9986a3" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cf54fdd2db5043ef9161171824aa88e5" } }, { @@ -71,18 +101,29 @@ { "v-on变更": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d78900b62a684cfbb425c9e9196cb2b4" } }, { "@click缩写": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7d2dfb75ffc447e584a7d41ad579a4a1" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8e534b156d904d9eb15d1f02fb7d4958" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/2.vue.js/config.json" "b/data/3.web\351\253\230\351\230\266/2.vue.js/config.json" index 3407cf95a3919655576413ce3c70fe407e0719d7..710b2d3bb480dbe9a03784b5a72a30927cc0aa7d 100644 --- "a/data/3.web\351\253\230\351\230\266/2.vue.js/config.json" +++ "b/data/3.web\351\253\230\351\230\266/2.vue.js/config.json" @@ -1,4 +1,6 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [] + "node_id": "web-a21713ca817041af979ccac45e19dd41", + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/3.angular.js/1.AngularJS\347\256\200\344\273\213/config.json" "b/data/3.web\351\253\230\351\230\266/3.angular.js/1.AngularJS\347\256\200\344\273\213/config.json" index a84142402521a98a234d8853b5dcff6fad1f8275..a3bf43d09dd52462e6e530e78531b1b08881e1a9 100644 --- "a/data/3.web\351\253\230\351\230\266/3.angular.js/1.AngularJS\347\256\200\344\273\213/config.json" +++ "b/data/3.web\351\253\230\351\230\266/3.angular.js/1.AngularJS\347\256\200\344\273\213/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-ea7d73da596e453aa8103164a4beb67e", "keywords": [], "children": [ { @@ -9,24 +9,38 @@ { "选择集成开发工具": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-969fbe83a373467ab41f31043d2d8be7" } }, { "下载与安装AngularJS": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-98a70a27495b43d180c7e87f491b8382" } }, { "代码调试工具": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e62c6ead759348888a00a0a54747055e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2a2cf830a6894b5da940856fbbc074fa" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/3.angular.js/10.AngularJS\350\277\207\346\273\244\345\231\250/config.json" "b/data/3.web\351\253\230\351\230\266/3.angular.js/10.AngularJS\350\277\207\346\273\244\345\231\250/config.json" index e886d99d8de9963ca77dd1b4645729acdd437d6d..a850cf03f51ea445978bbc4438c64af148341cb7 100644 --- "a/data/3.web\351\253\230\351\230\266/3.angular.js/10.AngularJS\350\277\207\346\273\244\345\231\250/config.json" +++ "b/data/3.web\351\253\230\351\230\266/3.angular.js/10.AngularJS\350\277\207\346\273\244\345\231\250/config.json" @@ -1,23 +1,32 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-6765955df26349f19818e40817925a72", "keywords": [], "children": [ { "过滤器使用方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6b33a42fdad648adba8d6dc917e0f645" } }, { "AngularJS内置过滤器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7bdf88f8d5f3478b874d586e7c948f9c" } }, { "自定义过滤器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5eab19fc9ded48e68ae44617167811f5" } }, { @@ -27,18 +36,29 @@ { "angular-filter": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2eb24c189e7441418f5b45f4d7da8d0c" } }, { "angular-emoji-filter": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0c8d3a38900d4410a0dff5d04333ad97" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e62efd68f0c34990911bfd0c1c2891e9" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/3.angular.js/11.AngularJS\344\270\255\347\232\204\344\276\235\350\265\226\346\263\250\345\205\245/config.json" "b/data/3.web\351\253\230\351\230\266/3.angular.js/11.AngularJS\344\270\255\347\232\204\344\276\235\350\265\226\346\263\250\345\205\245/config.json" index 78b9fb5331a2c48a9c7a1b180d3e62213c1b0517..e52eb07757170f8680b6d3c596d17a84a982987c 100644 --- "a/data/3.web\351\253\230\351\230\266/3.angular.js/11.AngularJS\344\270\255\347\232\204\344\276\235\350\265\226\346\263\250\345\205\245/config.json" +++ "b/data/3.web\351\253\230\351\230\266/3.angular.js/11.AngularJS\344\270\255\347\232\204\344\276\235\350\265\226\346\263\250\345\205\245/config.json" @@ -1,31 +1,45 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-37ed3f17010540a0afea02ae62d06a2f", "keywords": [], "children": [ { "依赖注入实现": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-70305b35875047f3ba2d88d73a0ff810" } }, { "AngularJS中的依赖注入": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2d6f21842eca477d8930f24b27b94ab0" } }, { "$provide服务介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8fd2e9d518294dd7adf5d62c9b7151c1" } }, { "$injector服务介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1941e875e34148b49ffe8c526bcafe4c" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/3.angular.js/12.AngularJS\344\270\216\345\212\250\347\224\273/config.json" "b/data/3.web\351\253\230\351\230\266/3.angular.js/12.AngularJS\344\270\216\345\212\250\347\224\273/config.json" index 528b3c3677d57d47a6edfa316ecf43987d2e70a5..785b20ef15bc210b1f1240a89613fe005e39d69e 100644 --- "a/data/3.web\351\253\230\351\230\266/3.angular.js/12.AngularJS\344\270\216\345\212\250\347\224\273/config.json" +++ "b/data/3.web\351\253\230\351\230\266/3.angular.js/12.AngularJS\344\270\216\345\212\250\347\224\273/config.json" @@ -1,11 +1,14 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-905d877e1584478cacdd05fd49eaf5ac", "keywords": [], "children": [ { "Web动画实现原理": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e85b8a32e40a4f16a38169b1e63283ff" } }, { @@ -15,28 +18,43 @@ { "CSS3中的Transform属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e9cdab2775474cb1bdc01ef29920e0b5" } }, { "CSS3中的Transition属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bf1c65a589324a7496636b562964c04c" } }, { "CSS3中的Animation属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b56c632a71374eb3bb68fc04a8553cd5" } }, { "常用的CSS3动画库": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-79e944f02c3c4613adab646615bd0647" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7bf7d59f2de444aeacc696c0f6837c66" } }, { @@ -46,36 +64,56 @@ { "基于事件驱动的CSS3动画": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ef45ce94dbdc42db94aefaa661e416e9" } }, { "AngularJS中的动画": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ac3310f554904870a403aaf7f556d3c9" } }, { "ngView视图切换动画案例": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3b3576c6c8de4ff28519977d699cfda2" } }, { "ngAnimate与CSS3动画库整合": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8ff099bceafb4bb58c9c2a038be2e21d" } }, { "ngFx动画扩展库": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-11064b9c838e4239999db38c2f77b711" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8f93484e2c5d4572ab048242ccdb5fa8" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/3.angular.js/13.Cookie\350\257\273\345\206\231/config.json" "b/data/3.web\351\253\230\351\230\266/3.angular.js/13.Cookie\350\257\273\345\206\231/config.json" index b8a852debb46c61e54c10c50149963806be99a6b..dc37e82edf6c965f0cb66ff77f7d1ba6fe4714c4 100644 --- "a/data/3.web\351\253\230\351\230\266/3.angular.js/13.Cookie\350\257\273\345\206\231/config.json" +++ "b/data/3.web\351\253\230\351\230\266/3.angular.js/13.Cookie\350\257\273\345\206\231/config.json" @@ -1,25 +1,36 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-ad74c6b8598e40cbbfc67fb2d7ef58cf", "keywords": [], "children": [ { "Cookie简介": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a8a435f622644e25900e312363092bc4" } }, { "在中操作Cookie": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-66fae9302fe541e2bed46045276d79eb" } }, { "在AngularJS中操作Cookie": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-20d755e1620e41c8a7261da1d935933c" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/3.angular.js/14.Promise/config.json" "b/data/3.web\351\253\230\351\230\266/3.angular.js/14.Promise/config.json" index 05db43e4be5e21a482bb7cbc88493807195eb3d8..427e5f52e8283404ff968d9b0dfa716cfc313704 100644 --- "a/data/3.web\351\253\230\351\230\266/3.angular.js/14.Promise/config.json" +++ "b/data/3.web\351\253\230\351\230\266/3.angular.js/14.Promise/config.json" @@ -1,11 +1,14 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-2c3acadf7ae04a2f9258993bdc22b38b", "keywords": [], "children": [ { "AngularJS中的Promise机制": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1c483dbd15cb452cabe5489d39a413a1" } }, { @@ -15,36 +18,56 @@ { "$http服务": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a52b023d0ce24044bfdbc860ed2bc6e8" } }, { "使用Express构建RESTful服务": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f9fbe1b1adb84642bd3c8a3cad2fd0de" } }, { "$resource服务": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-36794eaf221e4e11a012daf947a3213a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-097f6e7a32704d03b8b4a9e77afe761e" } }, { "AngularJS文件上传": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b2d746bfff3a46b0986961c3d6443ec0" } }, { "Angular File Upload模块介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f2343d7017504140969b1134f77a5edd" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/3.angular.js/15.AngularUI/config.json" "b/data/3.web\351\253\230\351\230\266/3.angular.js/15.AngularUI/config.json" index cecec7d64dc9f18d865c4d03e289585313a5d776..04412554e10322e3bf3e48a388500b5e5b6322b3 100644 --- "a/data/3.web\351\253\230\351\230\266/3.angular.js/15.AngularUI/config.json" +++ "b/data/3.web\351\253\230\351\230\266/3.angular.js/15.AngularUI/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-3bfd15af1a5449d585b873737eddd104", "keywords": [], "children": [ { @@ -9,60 +9,92 @@ { "警告框案例": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-47a7825d4f2449d8acf63cedf80e07df" } }, { "复选框案例": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5daab7c24f774cb0b3b2a640105b9031" } }, { "日历控件案例": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0f7bb12d5e2f419ca4ac5312fd1c5a60" } }, { "模态对话框案例": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d102cbcc6fe34d9f91b81164303080c8" } }, { "下拉菜单案例": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b9c21b45af0d40f9901a6b4ae8147c14" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4bfec54972fc4d1f81221f279192121c" } }, { "UI Ace": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b5de441746c247fe8f44026a4d718a40" } }, { "UI Grid": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a4faf89cbe15418886d5dad91c77c607" } }, { "UI Date": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7d1192ac3ef343178e3a4fb456785c21" } }, { "UI Select": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-baa8821fdd974985812482813eb7850b" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/3.angular.js/16.AngularJS\347\262\276\345\215\216\346\211\251\345\261\225/config.json" "b/data/3.web\351\253\230\351\230\266/3.angular.js/16.AngularJS\347\262\276\345\215\216\346\211\251\345\261\225/config.json" index 157e96aa1f715b926f5eb3e1e90eaa68c2ba99f8..bc1ff1a53b2f5216935667623ec4e2f8068532a0 100644 --- "a/data/3.web\351\253\230\351\230\266/3.angular.js/16.AngularJS\347\262\276\345\215\216\346\211\251\345\261\225/config.json" +++ "b/data/3.web\351\253\230\351\230\266/3.angular.js/16.AngularJS\347\262\276\345\215\216\346\211\251\345\261\225/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-cf8eecae6c144cc29590abb62fee608f", "keywords": [], "children": [ { @@ -9,42 +9,65 @@ { "柱状图案例": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-847b0a739d0b48569f7d3632ddf265f1" } }, { "曲线图案例": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-47abfdbc594a47248bf8c363a0d4b95f" } }, { "饼状图案例": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4a06c9faa3c74e81901e59b47d002bd7" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a0f163b04cb34b2191279e052e676a2d" } }, { "利用Videogular实现播放器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-90fc82f457ce4c809565020ebc950ab5" } }, { "利用Angular Chart生成图表": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-57042c80c8fa4cceadc60808b00024c0" } }, { "利用ngDialog实现对话框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-269cb36edb54458bb73b70aa08d2b736" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/3.angular.js/2.\345\217\214\345\220\221\346\225\260\346\215\256\347\273\221\345\256\232/config.json" "b/data/3.web\351\253\230\351\230\266/3.angular.js/2.\345\217\214\345\220\221\346\225\260\346\215\256\347\273\221\345\256\232/config.json" index e9863b4c8fe2b6b6e28399b184319d1ff035afdc..080d31688341e10b711b769a67ffbf35ff471ca7 100644 --- "a/data/3.web\351\253\230\351\230\266/3.angular.js/2.\345\217\214\345\220\221\346\225\260\346\215\256\347\273\221\345\256\232/config.json" +++ "b/data/3.web\351\253\230\351\230\266/3.angular.js/2.\345\217\214\345\220\221\346\225\260\346\215\256\347\273\221\345\256\232/config.json" @@ -1,25 +1,36 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-13689b20c5124f099061fef323f0aa5a", "keywords": [], "children": [ { "AngularJS双向数据绑定": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1e20277a2e0b4b93b5f66250846b1d7e" } }, { "ng-model指令": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-74d09baa4f56459da8180ee85bedaa07" } }, { "ng-bind指令": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e376bf65c1ea447e87b7928cf23b53ab" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/3.angular.js/3.AngularJS\344\270\216MVC/config.json" "b/data/3.web\351\253\230\351\230\266/3.angular.js/3.AngularJS\344\270\216MVC/config.json" index 8cb187bd35652cf5eedadaffa9189eb661dbbe9f..dbb25a5f5bc5246e1a3a5d72ead98c83f2a13770 100644 --- "a/data/3.web\351\253\230\351\230\266/3.angular.js/3.AngularJS\344\270\216MVC/config.json" +++ "b/data/3.web\351\253\230\351\230\266/3.angular.js/3.AngularJS\344\270\216MVC/config.json" @@ -1,11 +1,14 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-e3a214e25f294050946498fd54fc3270", "keywords": [], "children": [ { "MVC模式简介": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ae25d552d58c4a15a038e1420f521702" } }, { @@ -15,36 +18,56 @@ { "AngularJS控制器的定义": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-60d9f2a4034c42029293681190d219ec" } }, { "控制器对象的实例化": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b00d0a69cac84632b6b8950282a9e2e5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c6b1e739b8504cf3aec6498aa95567ac" } }, { "使用MVC思想重构价格计算器程序": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-01042edcf31249d2892f1a8285d02d96" } }, { "控制器的作用域范围": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-94b1e72d1b8c43e5bb6d80ce3cc6d5e4" } }, { "控制器中处理DOM事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-85a6408fbbab48509744c1b62aed4cc9" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/3.angular.js/4.\345\272\224\347\224\250\346\250\241\345\235\227\345\214\226/config.json" "b/data/3.web\351\253\230\351\230\266/3.angular.js/4.\345\272\224\347\224\250\346\250\241\345\235\227\345\214\226/config.json" index 2339d853601b407957db4acd7ae544d41848d62c..9385d2289e30a6eebc4cefdc8221dc62a35464fb 100644 --- "a/data/3.web\351\253\230\351\230\266/3.angular.js/4.\345\272\224\347\224\250\346\250\241\345\235\227\345\214\226/config.json" +++ "b/data/3.web\351\253\230\351\230\266/3.angular.js/4.\345\272\224\347\224\250\346\250\241\345\235\227\345\214\226/config.json" @@ -1,11 +1,14 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-834862f28fec42db9fd57f1e70472e54", "keywords": [], "children": [ { "应用模块划分的重要性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a06fd37885ed4f829203355736ead765" } }, { @@ -15,18 +18,29 @@ { "AngularJS模块的定义": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c8b5eadd62ce4e0aaa31e2806453505e" } }, { "使用模块解决命名冲突问题": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9dbdcc9ea90c4972bf80b19ec7f659f0" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5122e81fb37f4a969dc6a7c9055ddfdd" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/3.angular.js/5.\344\275\234\347\224\250\345\237\237\344\270\216\344\272\213\344\273\266/config.json" "b/data/3.web\351\253\230\351\230\266/3.angular.js/5.\344\275\234\347\224\250\345\237\237\344\270\216\344\272\213\344\273\266/config.json" index 0a467fe18080cacdf94c3f0c58d04ceadcfb43d0..7da3699f7fb6fb2a37556f6b50eba1f535ea6474 100644 --- "a/data/3.web\351\253\230\351\230\266/3.angular.js/5.\344\275\234\347\224\250\345\237\237\344\270\216\344\272\213\344\273\266/config.json" +++ "b/data/3.web\351\253\230\351\230\266/3.angular.js/5.\344\275\234\347\224\250\345\237\237\344\270\216\344\272\213\344\273\266/config.json" @@ -1,11 +1,14 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-0efa00ef6f8c459a95777484e24f4585", "keywords": [], "children": [ { "AngularJS作用域详解": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c131f88d2cd140a8b0cd93f6ce6ee404" } }, { @@ -15,16 +18,25 @@ { "对象继承机制": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2fdeb66e2814477e87e7376a3db18976" } }, { "AngularJS作用域对象原型继承": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-784f3d60ee81473eb48f76ad2cbc4d55" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-25e3c28702604d5e826a5e17a5135bfb" } }, { @@ -34,34 +46,52 @@ { "$watch方法监视作用域": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-416bbc9e626e43bf8907e7f9e06b628c" } }, { "作用域监视解除": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5ca95abb28ca43099feead8079b7edee" } }, { "$apply方法与$digest循环": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-90e99854f2e741f4b809bb7b6d3805fd" } }, { "$apply与$digest应用实战": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-744fec2ab517493da3ef5aa95283c8e2" } }, { "$timeout与$interval服务介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-82349eca961647fc87db9581122489e5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c50352b37baf4a44bd9b8997b80a3817" } }, { @@ -71,24 +101,38 @@ { "$emit方法实现事件路由": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ee71592e5aff4f02bcae3b064cb7f12d" } }, { "$broadcast方法实现事件广播": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1e2221d8334e4aef845e43450f92b826" } }, { "作用域对象$on方法详解": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f582d289e88a4df98d9f88422a161106" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-38ce10d0dc4247d08e1358748d3e908a" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/3.angular.js/6.\350\267\257\347\224\261\344\270\216\345\244\232\350\247\206\345\233\276/config.json" "b/data/3.web\351\253\230\351\230\266/3.angular.js/6.\350\267\257\347\224\261\344\270\216\345\244\232\350\247\206\345\233\276/config.json" index efa6bcb1f6e1c2c35e7ef3aba466c2bc28046179..f9dc6580fc1f56b9dd012d9f023fbaedfe120a0a 100644 --- "a/data/3.web\351\253\230\351\230\266/3.angular.js/6.\350\267\257\347\224\261\344\270\216\345\244\232\350\247\206\345\233\276/config.json" +++ "b/data/3.web\351\253\230\351\230\266/3.angular.js/6.\350\267\257\347\224\261\344\270\216\345\244\232\350\247\206\345\233\276/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-7fd2b2bdb4ee4a60843f45ad6c3497f5", "keywords": [], "children": [ { @@ -9,58 +9,88 @@ { "使用$routeProvider创建映射": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6cee1559363f4f5daa81d1facfc6f822" } }, { "创建多视图": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b98a65e620254385971e95756a6e79ac" } }, { "通过路由切换视图": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-16cf2efad5da43e4ae7aa14c5c327fd7" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-45925500604e4c589b14a944cc30ee2d" } }, { "通过URL向控制器传递参数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a3770744679048b9b3dd7a00508b5f3f" } }, { "ng-template指令的使用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-931d699599f24103a29eaf21e7c4bf43" } }, { "$location服务": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c5a931d7c8614ee0980585eee6d1d0de" } }, { "$location实现多视图切换": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ca6490593b2646da8ded6d992cd77205" } }, { "路由事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cf7eedb8e99f4e1782de8635ba32c9ca" } }, { "ng-include指令": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7024614bd7894007a6fa0518f681819a" } }, { @@ -70,12 +100,20 @@ { "UI Router下载与安装": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a9597c156f45428baf488a10489eb63d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-465e1f44e7374848a1fce3de82af5633" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/3.angular.js/7.AngularJS\350\241\250\345\215\225\346\240\241\351\252\214/config.json" "b/data/3.web\351\253\230\351\230\266/3.angular.js/7.AngularJS\350\241\250\345\215\225\346\240\241\351\252\214/config.json" index b94439607a38f60a67cdc9c7d64809a5d6d0de23..8caae4ce69952e7e1a2a54a856eea18ad2878bd4 100644 --- "a/data/3.web\351\253\230\351\230\266/3.angular.js/7.AngularJS\350\241\250\345\215\225\346\240\241\351\252\214/config.json" +++ "b/data/3.web\351\253\230\351\230\266/3.angular.js/7.AngularJS\350\241\250\345\215\225\346\240\241\351\252\214/config.json" @@ -1,25 +1,36 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-6b03eed2d5ab4f7a871a6ff1ac31ca54", "keywords": [], "children": [ { "Web前端表单校验的必要性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bc4c07625dd8423589953b736656cb95" } }, { "AngularJS表单校验模式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0c79c121874a41f3b0fb7c15b1ab900b" } }, { "ngMessages模块": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ff0ae406fcd54085a7c240fa6e23c670" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/3.angular.js/8.AngularJS\346\214\207\344\273\244/config.json" "b/data/3.web\351\253\230\351\230\266/3.angular.js/8.AngularJS\346\214\207\344\273\244/config.json" index 02775169c830732ac4f350b9cd79e7e91148c410..e9e5f98f03ca70043ce112649f2a3ca8fce0de3e 100644 --- "a/data/3.web\351\253\230\351\230\266/3.angular.js/8.AngularJS\346\214\207\344\273\244/config.json" +++ "b/data/3.web\351\253\230\351\230\266/3.angular.js/8.AngularJS\346\214\207\344\273\244/config.json" @@ -1,17 +1,23 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-2bd9d759c1d649389af123f8729956d0", "keywords": [], "children": [ { "内置指令详解": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8234c60c02ec4df6aebd1abb893edb64" } }, { "AngularJS自定义指令": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f56182690ee64d3d9fcc29ca292a7231" } }, { @@ -21,48 +27,74 @@ { "link方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4352729a14834e68bf435a85014c43d4" } }, { "compile方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-38a4bee1b36140859affbadadc562dd5" } }, { "scope属性与指令作用域": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-966d7a77c283426f86bd603f64455a4b" } }, { "孤立作用域与父作用域模型数据绑定": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-277005f9326f4e97b75bd0a917f0476e" } }, { "Transclusion": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c53fb4507fc5437e8b25c584454e27ec" } }, { "controller方法与require属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b61469ff811c4b688e1a03234808e861" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4a0ecf21bd8f40c6b2bef6e081a9eeb5" } }, { "自定义表单验证模式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2f252955874140abb7cfae80c8d288a3" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/3.angular.js/9.Service\343\200\201Factory\344\270\216Provider/config.json" "b/data/3.web\351\253\230\351\230\266/3.angular.js/9.Service\343\200\201Factory\344\270\216Provider/config.json" index bfedad1ce685301ab76919c45c6db31d104f580a..2a09fae48cce32eeb46147ae77015dd271724535 100644 --- "a/data/3.web\351\253\230\351\230\266/3.angular.js/9.Service\343\200\201Factory\344\270\216Provider/config.json" +++ "b/data/3.web\351\253\230\351\230\266/3.angular.js/9.Service\343\200\201Factory\344\270\216Provider/config.json" @@ -1,31 +1,45 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-ef9c82e79a0f45f188407296ccc73e0a", "keywords": [], "children": [ { "Service": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c9f0bdf82d404b728d6424889ecf17da" } }, { "Factory": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-da24c9e5bdde4390ad4ab692be9b9aa4" } }, { "Provider": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-60e13c1489bc4929900133371cc71187" } }, { "Value&Constant": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-72c74a36d6694edb972e966a68f46ce5" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/3.angular.js/config.json" "b/data/3.web\351\253\230\351\230\266/3.angular.js/config.json" index 3407cf95a3919655576413ce3c70fe407e0719d7..3217dee331a710157c1e0ef400ddc7add821821f 100644 --- "a/data/3.web\351\253\230\351\230\266/3.angular.js/config.json" +++ "b/data/3.web\351\253\230\351\230\266/3.angular.js/config.json" @@ -1,4 +1,6 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [] + "node_id": "web-aff6234f93d44ecc9a4731dc9859cd76", + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/4.react.js/1.React\347\256\200\344\273\213/config.json" "b/data/3.web\351\253\230\351\230\266/4.react.js/1.React\347\256\200\344\273\213/config.json" index dc57169aa46e5505e0fa90534e08886e3b7c895d..54eb3708a169e4f27f0c7c6547864c7c1df7ad52 100644 --- "a/data/3.web\351\253\230\351\230\266/4.react.js/1.React\347\256\200\344\273\213/config.json" +++ "b/data/3.web\351\253\230\351\230\266/4.react.js/1.React\347\256\200\344\273\213/config.json" @@ -1,23 +1,32 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-aadff5cba4ca4280a7dcc9e197225edd", "keywords": [], "children": [ { "React概述": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0d51364c01714fcab46d193288c46b46" } }, { "React优势": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e7cf2cf8711b4f398bd15ff94ec50e5a" } }, { "第一个React应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fd41e48ad6f24d5693008a75c8f9adf6" } }, { @@ -27,60 +36,92 @@ { "关于React脚手架": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-47205392c5b649fdb4ebe33b1c37e82a" } }, { "Node.js与npm": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a29233e9dc2e42dfb81a6d39e277668d" } }, { "Webpack模块打包器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5514df4346384d9d8184d7f3791fc6fb" } }, { "ES6和Babel": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2df6b9a35703419f82472af23c9196ba" } }, { "使用create-react-app脚手架开发第一个应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-17cbc9ab686b468ba17b08fbe2afffb3" } }, { "React项目架构": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e070bf02c9f742c8bec538055323d1b1" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b92e279d0a904d6d960ec90173302199" } }, { "React虚拟DOM": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3660e5f65dd74af7ada17fb04290c3fc" } }, { "JSX简单入门": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0513e06ae64e4920bcf031e4ec2764a6" } }, { "React渲染机制": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f41aff9d6d814ac6be1d352eeb894b8b" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/4.react.js/10.\347\212\266\346\200\201\346\217\220\345\215\207/config.json" "b/data/3.web\351\253\230\351\230\266/4.react.js/10.\347\212\266\346\200\201\346\217\220\345\215\207/config.json" index 2b75bd1ac356dafc15325a762c3ae6a954e64501..ec4ab31fe69d7170918f8cf3910fae20930e11d2 100644 --- "a/data/3.web\351\253\230\351\230\266/4.react.js/10.\347\212\266\346\200\201\346\217\220\345\215\207/config.json" +++ "b/data/3.web\351\253\230\351\230\266/4.react.js/10.\347\212\266\346\200\201\346\217\220\345\215\207/config.json" @@ -1,49 +1,72 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-b5adc566d7e845d2889972949a01a1b2", "keywords": [], "children": [ { "设计构想": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6ce0ed64d28a49da85a8f2ecf3194e92" } }, { "实现水温监控功能": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c6967a6ab62341a78ff6334c1371d979" } }, { "加入第二个水温输入框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3faf0d487033483f9535b66fa8ecfe7f" } }, { "同步二个水温输入框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-90ac7a51bd60424da6ab30dd3c67ffd2" } }, { "将水温“状态共享”": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-be799173a53c495393e3eb73ea7cd935" } }, { "将水温“状态提升”": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e6e3f92ad5194066a3105c3874e82a6b" } }, { "实现水温同步换算": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-52a16cff93f14783924f213dcb996602" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/4.react.js/11.React\346\211\251\345\261\225/config.json" "b/data/3.web\351\253\230\351\230\266/4.react.js/11.React\346\211\251\345\261\225/config.json" index 619569ceb6ad0375622af088addc69ee03ecb8f2..656dc04e111c69d19571cd7de55b2f77b81aaf21 100644 --- "a/data/3.web\351\253\230\351\230\266/4.react.js/11.React\346\211\251\345\261\225/config.json" +++ "b/data/3.web\351\253\230\351\230\266/4.react.js/11.React\346\211\251\345\261\225/config.json" @@ -1,49 +1,72 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-7c92d979d04542f49189b1c63b2406fb", "keywords": [], "children": [ { "Node.js与React": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f915f2a667b34c64872f567f5122e783" } }, { "Babel与React": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7f9efb9bbd06490a95d7959472b5ec78" } }, { "Webpack模块打包器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6aef73f580204afe8f86234881165212" } }, { "Node+Babel+Webpack搭建React环境": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8b1879f4c5474acdb521625180b91a04" } }, { "Browserify模块打包器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bca198adcbed4a81b597678ad6b10c80" } }, { "React Router与单页面应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5bc0c3c28f8b4eeb9289cd7fd53f909a" } }, { "Redux与React": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-68fe575851ff48128947fb7683fa1fab" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/4.react.js/2.React JSX/config.json" "b/data/3.web\351\253\230\351\230\266/4.react.js/2.React JSX/config.json" index d44837014eb59e696fa24fff3a5c363df829964e..b1ff327bfee78c6012903c7c0722a50ead739fdf 100644 --- "a/data/3.web\351\253\230\351\230\266/4.react.js/2.React JSX/config.json" +++ "b/data/3.web\351\253\230\351\230\266/4.react.js/2.React JSX/config.json" @@ -1,73 +1,108 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-56b0c716c03b41e0930dbe74601193ff", "keywords": [], "children": [ { "JSX介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-50f1027f00344046b2b09c9546f4d208" } }, { "JSX独立文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-06f334375b86474aa7f924bfb9675071" } }, { "JSX算术表达式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-af8fec286d57478ca0170b2c3b715b3e" } }, { "JSX条件表达式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5a9bc73f746e4c95b6340a357e22b22f" } }, { "JSX嵌入表达式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2ffc916796d049fa985340c67ab5a091" } }, { "JSX对象表达式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-693bd9a01cb8451fa4278aaa170673d8" } }, { "JSX函数表达式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d95948368dd34d61b70911717bc09911" } }, { "JSX增强函数表达式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2e3e3fd5629e46aebefdaf7e0f4a228f" } }, { "JSX数组表达式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-80f74dd3d5964081889532d82128b2a7" } }, { "JSX样式表达式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-98284ed0b82643b0b5459f3b717a1e00" } }, { "JSX注释表达式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e914f8f00545489e87fd9f760f982dcc" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/4.react.js/3.React\347\273\204\344\273\266\344\270\216Props/config.json" "b/data/3.web\351\253\230\351\230\266/4.react.js/3.React\347\273\204\344\273\266\344\270\216Props/config.json" index a8560e1060550bf234a466c09f8c4edbac4a444c..a75316e5e8d049dcd1071bf0536fd8bdd99e34ec 100644 --- "a/data/3.web\351\253\230\351\230\266/4.react.js/3.React\347\273\204\344\273\266\344\270\216Props/config.json" +++ "b/data/3.web\351\253\230\351\230\266/4.react.js/3.React\347\273\204\344\273\266\344\270\216Props/config.json" @@ -1,61 +1,90 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-b05f3f6372fe4443a0fbda575ec526d7", "keywords": [], "children": [ { "React组件介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-29418e01023d40b0bdb01853cfdd1255" } }, { "React函数组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0540f6e2d8794b40880fa0c9e7dba3f5" } }, { "React类组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b09dc89865e74ee8a36d118e6d244f2d" } }, { "React组合组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7e453e03c746438aaef576171d0b48fe" } }, { "React Props介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0b336bb047524d709d901cefe723c568" } }, { "React Props应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a914cf93c04245358813860327f1de7d" } }, { "React Props只读性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-68e64c90fd284d3788772c3c0a6f1ead" } }, { "React Props默认值": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-444b1a49238445818f45c4dab666406d" } }, { "React组件切分与提取": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-10bd0076f5714a929189674f79fc3580" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/4.react.js/4.React State\344\270\216\347\224\237\345\221\275\345\221\250\346\234\237/config.json" "b/data/3.web\351\253\230\351\230\266/4.react.js/4.React State\344\270\216\347\224\237\345\221\275\345\221\250\346\234\237/config.json" index 4eb0119dcd9b041dd800e0ee691ced1af54f035c..3525f3466eb3e4b1a3a100ec6da470ed53a65c80 100644 --- "a/data/3.web\351\253\230\351\230\266/4.react.js/4.React State\344\270\216\347\224\237\345\221\275\345\221\250\346\234\237/config.json" +++ "b/data/3.web\351\253\230\351\230\266/4.react.js/4.React State\344\270\216\347\224\237\345\221\275\345\221\250\346\234\237/config.json" @@ -1,67 +1,99 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-c2a845ddfd7e42118ebdbd43d8e68ca8", "keywords": [], "children": [ { "React State介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-18270c61dde44714b291fc9ff665feb8" } }, { "关于定时器时钟的思考": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cca6a819136a4ea5a22316f8ec0ce8d4" } }, { "开始封装时钟UI": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-31dd000a184a46d5896efc317bc72a30" } }, { "实现时钟UI的自动更新": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-535fd81b86834018aebfbd2f8010631a" } }, { "自我更新的时钟UI类": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-13585f7318174442a02cda63d12a4b5c" } }, { "在时钟组件类中引入State状态": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5d6b33d4df9d405c82effd83652f6a9a" } }, { "React生命周期介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-80fe827e5e514b0a9dc57b9163eca994" } }, { "在时钟组件类中使用生命周期": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-90f3a0cb1352405692f2c6070f1b8f73" } }, { "正确的使用State状态": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6d265482ff6e4756872d1ed694ad8a58" } }, { "自顶向下的数据流": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3ba68aacd5d84c55829e01fd932046dc" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/4.react.js/5.React\344\272\213\344\273\266\345\244\204\347\220\206/config.json" "b/data/3.web\351\253\230\351\230\266/4.react.js/5.React\344\272\213\344\273\266\345\244\204\347\220\206/config.json" index 5d943a7cb3f7730d4f3ed2048820d21217bafc5f..a62bec4b52e07a743e306b070cb247a64c4a3c2f 100644 --- "a/data/3.web\351\253\230\351\230\266/4.react.js/5.React\344\272\213\344\273\266\345\244\204\347\220\206/config.json" +++ "b/data/3.web\351\253\230\351\230\266/4.react.js/5.React\344\272\213\344\273\266\345\244\204\347\220\206/config.json" @@ -1,61 +1,90 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-8981d1ee641d4f3d9ff7bf088cb93dc5", "keywords": [], "children": [ { "React事件介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d924409ffd8b4028b16520b128daa231" } }, { "React单击事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0127aac4e7e5414598c2bbdf8e18d477" } }, { "React阻止事件默认行为": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c55734e86631428f95a445b7038827eb" } }, { "React类的事件处理方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e1b6260116c44b89937e71452412af1e" } }, { "绑定回调方法的其他方式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cd3faf1c7af94cf286aa31cbfe891aca" } }, { "在事件处理方法中传递参数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7db8c9e394d64642a87e521d98a62f03" } }, { "实战:开关按钮": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f9439cd76c4744269910fe448bca1707" } }, { "React文本框事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9a2d013192434d20b2e59cb03f2f066c" } }, { "实战:水温监控控件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dbcfbbd437fb4c0797c7cf31795dec96" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/4.react.js/6.React\346\235\241\344\273\266\346\270\262\346\237\223/config.json" "b/data/3.web\351\253\230\351\230\266/4.react.js/6.React\346\235\241\344\273\266\346\270\262\346\237\223/config.json" index 06edda7e83b0eba66b4a93a30feb81d18ac2005c..ecaa4dabacc76d69852e1f3c2165da56c5c4e7c2 100644 --- "a/data/3.web\351\253\230\351\230\266/4.react.js/6.React\346\235\241\344\273\266\346\270\262\346\237\223/config.json" +++ "b/data/3.web\351\253\230\351\230\266/4.react.js/6.React\346\235\241\344\273\266\346\270\262\346\237\223/config.json" @@ -1,49 +1,72 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-379ff1dffd184767a6ef38f015f66f0d", "keywords": [], "children": [ { "React条件渲染介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8e74f5a92b9d4856848e0227f6374957" } }, { "元素变量的条件渲染": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e79ae05532ff4304abf7e37a265c5a90" } }, { "逻辑“与”运算符的条件渲染": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-70a3f0270c5a426c8ff642c41262553f" } }, { "逻辑“或”运算符的条件渲染": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d89c2f41d6f4479ca19fd53b2ee44dd0" } }, { "三元逻辑表达式的条件渲染": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-13c1c7bd913d4da8af8ac37cb43b98bc" } }, { "实战:改进登录组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-be635426c9cf4049a3613aa3bfd2c4ff" } }, { "阻止组件渲染": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e1f941a37ee14a79979c5fa49b2a7a38" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/4.react.js/7.React\345\210\227\350\241\250\344\270\216Key/config.json" "b/data/3.web\351\253\230\351\230\266/4.react.js/7.React\345\210\227\350\241\250\344\270\216Key/config.json" index 5f98e20e9fb1e523a98710d186ea0f69c221dd5b..e17cbaa65a36add7ba632b8f82e286a4d311c449 100644 --- "a/data/3.web\351\253\230\351\230\266/4.react.js/7.React\345\210\227\350\241\250\344\270\216Key/config.json" +++ "b/data/3.web\351\253\230\351\230\266/4.react.js/7.React\345\210\227\350\241\250\344\270\216Key/config.json" @@ -1,55 +1,81 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-175c1e43516945929c3329599f56b69a", "keywords": [], "children": [ { "React列表介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8754d6e7e9ad472e88ef6932c05d61a0" } }, { "基础列表组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1ea18e22306642dab0505bb773b51df5" } }, { "多级列表组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7d9a1eb007e047dd8eca3047eaeceb3d" } }, { "React Key介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c5a4201235f64357a5f9ce3135bb694c" } }, { "React Key使用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-01baeba184f04f67bb3d722eb701d12f" } }, { "React通过Key提取组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a5311ad6ab50426c8f897364f911a538" } }, { "React Key局部唯一性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a03b430104364a1683b0e5269880c3f6" } }, { "React Key有效性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-68148a7261ca4a9b848714cc23091816" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/4.react.js/8.React\350\241\250\345\215\225/config.json" "b/data/3.web\351\253\230\351\230\266/4.react.js/8.React\350\241\250\345\215\225/config.json" index 194365746048f53f38b2cee947911c4182909efd..a1fa4392af035d7a2c062befbe585af8795afe13 100644 --- "a/data/3.web\351\253\230\351\230\266/4.react.js/8.React\350\241\250\345\215\225/config.json" +++ "b/data/3.web\351\253\230\351\230\266/4.react.js/8.React\350\241\250\345\215\225/config.json" @@ -1,73 +1,108 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-f7327ba9f81645f288d400df7469c316", "keywords": [], "children": [ { "React表单介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4c5248e58e9d4daba0fefe948ae0df75" } }, { "表单受控组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-610cb51c0c00465697f36cb88e42616f" } }, { "强制转换大写字母": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b4758f089d0046de814425c6f9df7ee8" } }, { "校验手机号码格式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ae722ddfd60747c79026be06c69dfea7" } }, { "格式化序列号": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4707a334ca954fb2a9ddf97e90d1618e" } }, { "文本域关键字": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0b62f3b7ebc648dab853ee34e1781e7e" } }, { "下拉列表受控组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d9172c7776044585ad641479573970a1" } }, { "处理多个输入": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8358857a93904d49a4f1fc27fe464521" } }, { "React表单提交操作": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a1941a09073b4e73870e234963e74a29" } }, { "React表单提交服务器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a801072abed14bc498e89714352fec95" } }, { "受控组件与非受控组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-34f8e064d29546d08c4408687310b01c" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/4.react.js/9.\347\273\204\345\220\210\344\270\216\347\273\247\346\211\277/config.json" "b/data/3.web\351\253\230\351\230\266/4.react.js/9.\347\273\204\345\220\210\344\270\216\347\273\247\346\211\277/config.json" index 70afa74009732a4fa9a3a25f4a5fcb38d1af2fd1..971aa4dcf703bde6ca99da43ced39e0c9d2fe9b2 100644 --- "a/data/3.web\351\253\230\351\230\266/4.react.js/9.\347\273\204\345\220\210\344\270\216\347\273\247\346\211\277/config.json" +++ "b/data/3.web\351\253\230\351\230\266/4.react.js/9.\347\273\204\345\220\210\344\270\216\347\273\247\346\211\277/config.json" @@ -1,43 +1,63 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-c55103dc58334cb3adc43489d9399396", "keywords": [], "children": [ { "组合与继承概述": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d73736b3814840ecbfc91cd09b4d3332" } }, { "定义组件容器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-efc1e27a5fcf4de09d685e530798cd4f" } }, { "定义子组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a074fb28dbfa47ffbe8516ec1d5b665e" } }, { "自定义Props属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cb4d3770a62a4d17ba611785c2cd3fcd" } }, { "特例关系组合": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2e02e668e31e465d997468e573f16976" } }, { "类组合方式确认框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8ed641245447451eb39d76bf16117495" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/4.react.js/config.json" "b/data/3.web\351\253\230\351\230\266/4.react.js/config.json" index 3407cf95a3919655576413ce3c70fe407e0719d7..e85c13d284cf62fbbabc8b4baa3406237e5ebc0c 100644 --- "a/data/3.web\351\253\230\351\230\266/4.react.js/config.json" +++ "b/data/3.web\351\253\230\351\230\266/4.react.js/config.json" @@ -1,4 +1,6 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [] + "node_id": "web-b164ff2d7da54fd992a94988362a00e6", + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/5.\345\260\217\347\250\213\345\272\217\345\274\200\345\217\221/1.\345\276\256\344\277\241\345\260\217\347\250\213\345\272\217/config.json" "b/data/3.web\351\253\230\351\230\266/5.\345\260\217\347\250\213\345\272\217\345\274\200\345\217\221/1.\345\276\256\344\277\241\345\260\217\347\250\213\345\272\217/config.json" index 163cc755731a82b9a7fb4bc716d12dc901d1c834..41e51a48489a50526ef8b518ac047ffe5f7149ad 100644 --- "a/data/3.web\351\253\230\351\230\266/5.\345\260\217\347\250\213\345\272\217\345\274\200\345\217\221/1.\345\276\256\344\277\241\345\260\217\347\250\213\345\272\217/config.json" +++ "b/data/3.web\351\253\230\351\230\266/5.\345\260\217\347\250\213\345\272\217\345\274\200\345\217\221/1.\345\276\256\344\277\241\345\260\217\347\250\213\345\272\217/config.json" @@ -1,29 +1,41 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-963ab50ae7ec4a6383bbd5ef11e3f63d", "keywords": [], "children": [ { "申请小程序账号": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d950681a68c94a3e84c2a282d38c4372" } }, { "微信开发者工具": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5cd12d3a11704e909acd48f2ea3db478" } }, { "上传开发版小程序": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-39fb948cc7da4b0e918ae3d5a57de54e" } }, { "项目结构概述": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c99d6b36831e46bcbfdd4fdebe206479" } }, { @@ -33,58 +45,88 @@ { "全局配置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c10fcb8e420c428bbdcfcf786bbad919" } }, { "低版本兼容": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1e0f2d95cde1441b992179a1b011be00" } }, { "pages属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dc67614802534087bcd1ee8621f0c012" } }, { "window属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0b1c3df6e44c4e209d1469f35fc2b706" } }, { "tabBar属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e8f9eca80a8a4ef38a7400e2df056ffb" } }, { "networkTimeout属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b07798e2bb7c47d4be3b87e40f791dd0" } }, { "debug属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3413c8fb84e54fdd87478ef5bc534dbc" } }, { "其他属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6b537caafa48495c925e2d15eef2fc6b" } }, { "页面配置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7577e107d856472aad83bf00f9fd1fdb" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6f6f5b4103d04d928d3e702f84ee91c6" } }, { @@ -94,46 +136,70 @@ { "认识WXML": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dc1d7f8b6ff444fb90a9a7ef5c656803" } }, { "认识WXSS": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-741db5b779754e0bbaba2662dc837536" } }, { "容器组件view与弹性布局": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b158027998644188895edea234157efe" } }, { "盒模型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b294dc5753e341a188e6dc835697b10d" } }, { "块级元素与行内元素": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-afe9ab59127e45578b79b799158aa824" } }, { "尺寸单位": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-35abe2844851420693d85870294cfcdb" } }, { "平台差异与样式补全": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2126711b3d6f46ee8a3c3199af75e9b9" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9e4435bb7ef244ac9b2224431716e438" } }, { @@ -143,36 +209,56 @@ { "App注册": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3d476c7c077f402c81921f276e781787" } }, { "Page注册": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-14f60a7a18dc437e9852489fc54af72f" } }, { "将数据显示在视图中": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1993bd37510343a1a47cfb2fadabd701" } }, { "页面组件事件处理": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0f78a7242ea943e4b621fc9fd97eb8b9" } }, { "小程序API": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9dd17751fc4244139f42ca929c911530" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8f19f1e9d53f4f8aa7699c27efb53506" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/5.\345\260\217\347\250\213\345\272\217\345\274\200\345\217\221/2.\346\224\257\344\273\230\345\256\235\345\260\217\347\250\213\345\272\217/config.json" "b/data/3.web\351\253\230\351\230\266/5.\345\260\217\347\250\213\345\272\217\345\274\200\345\217\221/2.\346\224\257\344\273\230\345\256\235\345\260\217\347\250\213\345\272\217/config.json" index abaa260aa762fd0392bac507fc916ea4190ffc60..9942fcea807690a4df67d10c03df3eaa211fe87c 100644 --- "a/data/3.web\351\253\230\351\230\266/5.\345\260\217\347\250\213\345\272\217\345\274\200\345\217\221/2.\346\224\257\344\273\230\345\256\235\345\260\217\347\250\213\345\272\217/config.json" +++ "b/data/3.web\351\253\230\351\230\266/5.\345\260\217\347\250\213\345\272\217\345\274\200\345\217\221/2.\346\224\257\344\273\230\345\256\235\345\260\217\347\250\213\345\272\217/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-7171bd5ff9204d78aa3814dcff8a9fc9", "keywords": [], "children": [ { @@ -13,40 +13,61 @@ { "历史背景": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5386666b93fd476bbca90279dd8af2b0" } }, { "应用场景": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-60f7ae9f20ed4f319e4b2dc22fd08492" } }, { "小程序的影响": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-552ea55518204a22b44d15a23e1573ec" } }, { "技能要求": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-692760f120a94dbbadd1264fe9c87408" } }, { "小程序入口": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5158d7aedf354c2f86c0a5dba91e9c15" } }, { "小程序开放能力": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5fdc173c4cff49819a5ab9636925373f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f55f1a0930d2481a850c434a4d80bf4a" } }, { @@ -56,31 +77,49 @@ { "成为蚂蚁金服开放平台开发者": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a321940eb1d44da2bd2eb2fe1fb1fa8c" } }, { "身份角色的入驻": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-973b7dd445a845a08ffb482537b2f5bd" } }, { "创建小程序": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-67188c2bf7e14b2c910de216576d8705" } }, { "小程序设置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-691cbc02b83942ff9c60239cc1e6fa93" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-90afaa5fd043443eb9ef64580a910d9e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d56fee57848d42e8b376e6deb6d69af9" } }, { @@ -90,46 +129,70 @@ { "安装蚂蚁开发者工具": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ac137d1ca28549e68dd1475f8f092811" } }, { "创建示例工程": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-60d189db2bc649dd9de051fc1157a1a7" } }, { "编码与调试": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-114733cb824b4d4d9a0b4b997997eb7a" } }, { "上传": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-37b177256da14d67ab7f651c9a7266dc" } }, { "设置体验版(可选)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1276f70626634ba38931e21a998067e8" } }, { "提交审核": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4cca799dd9114798913302c36a0fb4ac" } }, { "灰度测试与上架": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-eb106d7e2218439c973d9503640da851" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7f4e095bf2674ae6a2f3ae4482577924" } }, { @@ -143,22 +206,34 @@ { "盒模型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-38f373db05834c469a36d14227393a9a" } }, { "显示、定位和浮动": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-62995914195d48b281a3fa8d4ab9b577" } }, { "Flex布局": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c60f267824cb468da03b834cd4d6467f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e0af6f95e3874d27b767c6a677c3cdd2" } }, { @@ -168,31 +243,49 @@ { "最初的时代": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7b8d915e2e4b404bbf2171b250f2b5ac" } }, { "前端的革命": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-195fa27056ca4687a1a1ae34b29471c6" } }, { "类库的繁荣": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1043d9a55b3b4e38ac5a4c1bbe619508" } }, { "框架的兴起": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7803edb7985942d3a25c4343365baf3c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-63ac84db3fb149beacbe925ca5247544" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2ea3f823b413432eb4ed1aa34fc69c81" } }, { @@ -202,7 +295,10 @@ { "目录结构": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9924539d84c84047838639b6acee326b" } }, { @@ -212,16 +308,25 @@ { "全局配置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-895c29a26b864acf9085efb0c8b3f3fc" } }, { "页面配置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d14828a11672418ba5e32928e49702de" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-282c6a3cfc3f426ca7828797bfc9a542" } }, { @@ -231,16 +336,25 @@ { "注册程序App": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-457b2b176f4e4c6e8a947b21e2fcb70f" } }, { "注册页面Page": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2498dad69d7c460e918b8b55c548559c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9533b8f85c5546d19a92d310bc0b28a6" } }, { @@ -250,49 +364,76 @@ { "数据绑定": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0904a71a4c5d42c3bc6a9a6bcaa89294" } }, { "条件渲染": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-56dde1f2514c438d868bddc987324f6e" } }, { "列表渲染": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-78f01951c4aa48efb6cb3b9baa03701d" } }, { "定义模板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fbb93395449e4d0cacc21f837211e750" } }, { "引用文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f48d5c29e3b4465db85ddc26553d0f91" } }, { "事件绑定": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1c4d1090211d4e77a50026cd04d56ba0" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-58dfca49c83a4d7d8058c4b7d843afed" } }, { "样式ACSS": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e13d7baaa9654ee88b6fc1357234769f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9b03ffcaa3214bcbb260403f15815ea7" } }, { @@ -306,22 +447,34 @@ { "基础容器view": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-51502b9841bf4d9a9d9d6a50612b5ade" } }, { "滑块容器swiper": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a1bbfa7301094914956c24f8f2aa27d7" } }, { "滚动容器scroll-view": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b209029f32024576831b0a96872c5b8a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2fd0e7f1fb614865abe8a049885063a2" } }, { @@ -331,22 +484,34 @@ { "文字text": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-75e85a35694946e9a05ad9a9224bd9c7" } }, { "图标icon": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c6efbb40dd6d4aba98f7bde4cccb6013" } }, { "进度条progress": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9c717945ac2a41008be936e8902e462a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e955b0e5461f403890cb5847cff1c09d" } }, { @@ -356,85 +521,130 @@ { "表单form": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f86fdf13c39a4d8aa3b4f7198632fc4d" } }, { "输入框input": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a7e646c7b8064b57b5950337b4c9734f" } }, { "按钮button": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6a35fd8d8c1147f5821306848d4bb4e4" } }, { "单选框radio": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1737d7f264a3438f8cffec5e62800b96" } }, { "复选框checkbox": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a822a68ea612460aadbe520c87296142" } }, { "开关switch": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7d60d963b84d4fb1812f4f6838ade795" } }, { "标记label": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5854d841b0604b288d8d2515077c752e" } }, { "多行输入textarea": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d568c67021b1406e9582681f3b11b64f" } }, { "滑动条slider": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3607f43c6d52447fa4a86f29fde46894" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-708346c181ba481793cbb09ec8972149" } }, { "导航": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d4f82e1ce1624585b5cfd00da41564fb" } }, { "媒体组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e33254b30765401f92a79a8a0d2ea2dc" } }, { "地图": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5a59b87ff19f4cff9dc2b1cbdf1f9d97" } }, { "画布": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-831a828239014256b1c52ac9e138dd1f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0d3f87ba1ffd4ff6b6dbb072deffeef7" } }, { @@ -444,46 +654,70 @@ { "组件结构": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2e171790bf05459fb79eaa5734c8b89e" } }, { "折叠面板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e951dcf1f4cd47ddacfec8e8748f07c9" } }, { "下拉菜单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-11023227491d4148b3011d536c662df8" } }, { "通用错误页": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-33345ec7287445029efeeabf086182e1" } }, { "宫格": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6c3ed02a37fa427db30dca19261a4f41" } }, { "列表": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5dceb80e9a1b4eec8f47020779bfdeee" } }, { "标签": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a9d850c6fe9e4c029b71c6903b8d287b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-013fa6c56d514e70b5e0812610c4fc17" } }, { @@ -493,40 +727,61 @@ { "获取授权码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4731fde3f9474b78a9ca6aad4886de11" } }, { "获取用户信息": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1a9c947c88bd4ed8801d3d2e9601ee3f" } }, { "发起支付": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7cfedc4d9fec40bd83fe14b24e3543f9" } }, { "跳转支付宝卡包": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-255668b8b302493b8ee13d820c6c218d" } }, { "会员卡授权": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-85d502181d3546a280409de7442a5e19" } }, { "芝麻认证": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-44b2128853fd42849a0e2a69bca64708" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5a4230d87a0a437c9b9f824f21080638" } }, { @@ -540,58 +795,88 @@ { "导航栏": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6158a55e85464a2798bc7a69b9380daf" } }, { "TabBar": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-196bba8f8f734309a2b24466f87f6505" } }, { "交互反馈": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2c507201203b434d851c8d6d09c34d79" } }, { "下拉刷新": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-574258a0f92e4670bdc3a444f27d3fd8" } }, { "联系人": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-53c4c81a4d0f41738dd1f8c9753a9199" } }, { "选择城市": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bdb1662bc44e4175940a8b3c48e4c743" } }, { "选择日期": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-368b4d57b7d44458ba8432e2ca2fb358" } }, { "动画": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5c104f93a92e4fe79f4a91100989294d" } }, { "画布": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-33ed5db3df8b41b8b50282bd5ce9ad13" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-21e22663e71d4aea8a33415baaad8886" } }, { @@ -601,31 +886,49 @@ { "发起请求": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3c307a6f6ded4c80944b87cc56d25229" } }, { "上传文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e13e74b341784a67a58776785c6c85d6" } }, { "下载文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d33b4e05621240e282216f3eed0566a1" } }, { "WebSocket": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f073d21ad63b4376aa5418d4fc30cacf" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a32eecfeca3f4356a859a1c25b3da915" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-541b9c68e2c2413ea91cd77768f9c68d" } }, { @@ -639,94 +942,142 @@ { "获取系统信息": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e583b174be0842b29819c2d7891b5e1e" } }, { "获取当前网络状态": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4a7744556f02434c920f2bc155b33d7c" } }, { "获取服务器时间": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-88d0ea3d09304d7bb010c822b22ecead" } }, { "剪贴板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3c5a4cf88111483c89191a717094ab1f" } }, { "摇一摇": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b08a0239d1d1440082c05f7add8fae9a" } }, { "震动": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-89a406872e0042dd9adf56c4b3223dc3" } }, { "打电话": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c57d34454dff4252a1155d872af85620" } }, { "用户截屏事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4c6b94d7ddcc45c29037dda768f63477" } }, { "屏幕亮度": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5024ce5088334398ae656d3d6e6c77cb" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ada4f70a4f1143da887491bd2d4a1b1e" } }, { "媒体": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6b26527758774c6f9be17fcc4d9e8998" } }, { "位置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e7e6b0a1dc9c470cbf814fd9871fbee4" } }, { "缓存数据": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-35034edb148c4b47a5a1b1b899514343" } }, { "扫码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b0687ef8ee7d4d69985e9c8c8600527a" } }, { "分享": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dc35d285609c45318d76b0bd1b52e02e" } }, { "数据安全": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4c99fdf952b949fb8ce78e4f59e73e2f" } }, { @@ -736,21 +1087,35 @@ { "快速接入": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cec824c244d54110a0cdc1be0a1bfeb0" } }, { "API列表": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2d08dd7e38dd44d79e494bc1205995ed" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3e1dbf43bb894069a191ce0b9319ec9b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dbe6e1ea160d4b3ab0ba61ff72a48f87" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/5.\345\260\217\347\250\213\345\272\217\345\274\200\345\217\221/config.json" "b/data/3.web\351\253\230\351\230\266/5.\345\260\217\347\250\213\345\272\217\345\274\200\345\217\221/config.json" index 3407cf95a3919655576413ce3c70fe407e0719d7..caa9d0e8c0917244dca4eefb732d5ad9388ae46a 100644 --- "a/data/3.web\351\253\230\351\230\266/5.\345\260\217\347\250\213\345\272\217\345\274\200\345\217\221/config.json" +++ "b/data/3.web\351\253\230\351\230\266/5.\345\260\217\347\250\213\345\272\217\345\274\200\345\217\221/config.json" @@ -1,4 +1,6 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [] + "node_id": "web-2250748f4fc443e593a64a4ff6476f43", + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/6.\347\247\273\345\212\250App\345\274\200\345\217\221/1.Android App\345\274\200\345\217\221/config.json" "b/data/3.web\351\253\230\351\230\266/6.\347\247\273\345\212\250App\345\274\200\345\217\221/1.Android App\345\274\200\345\217\221/config.json" index 68251691deb416ba3aea81915b4396682bba1618..d57c2dda8cb81a178e68652ace427b22b4672c78 100644 --- "a/data/3.web\351\253\230\351\230\266/6.\347\247\273\345\212\250App\345\274\200\345\217\221/1.Android App\345\274\200\345\217\221/config.json" +++ "b/data/3.web\351\253\230\351\230\266/6.\347\247\273\345\212\250App\345\274\200\345\217\221/1.Android App\345\274\200\345\217\221/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-0b05ac94a7054a148fb4edd04747f06e", "keywords": [], "children": [ { @@ -13,16 +13,25 @@ { "Android的发展历程": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-885cc713eaed4c7dab318345509f4323" } }, { "Android Studio的发展历程": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f24ce8c3d7e34719b36cf769d90104e1" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a9f823ff325d4a9d906338bdcbab3f42" } }, { @@ -32,22 +41,34 @@ { "开发机配置要求": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8191c91d10654373aded8a7d9b9b0f92" } }, { "安装Android Studio": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-97e7a23e1b0249d1b8beb6135192daf6" } }, { "下载Android的SDK": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-62b4665db5a84a1d84608a26ad506898" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f09cbc2ea23446ddb09d2f9c425f0590" } }, { @@ -57,22 +78,34 @@ { "创建新项目": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a2668188ffec4a73861fd70577a16a3a" } }, { "导入已有的工程": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0b0f52e37dde426caadc8fc99b2be735" } }, { "编译App工程": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b438a22f146947a7838e89b222cb23b3" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-be6a5c66471c40e289b0c3f29729f05d" } }, { @@ -82,25 +115,40 @@ { "创建内置模拟器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-060be95ace6143e18944722b569222a9" } }, { "在模拟器上运行App": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6b01c7daf2fb4a329f5c84335c348805" } }, { "观察App的运行日志": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6ae16ffcbe5641b8978cc2e013714384" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b9fb56efe02c41318804849f4dab2a58" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ee67d140de0440d69f1231b20a981ba9" } }, { @@ -114,22 +162,34 @@ { "App的运行环境": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-af954b181c334f3fb9b6efaec9710a09" } }, { "App的开发语言": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cd5848abcfc445e189607c873be49bca" } }, { "App连接的数据库": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-70628376b9264fc1badbeb7c65787990" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-de1e8275b3464fe1a1bef79e1c44c449" } }, { @@ -139,22 +199,34 @@ { "App工程目录结构": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4a52dbc12e4c4b8aa651f0c54f79ae46" } }, { "编译配置文件build.gradle": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8ef253fb29264dd8a440d28a4c7ab9b5" } }, { "运行配置文件AndroidManifest.ml": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9c8f3bcb6c5a4d01a6274584c7b77a76" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ff968cdab2d64d158d4cd4648119a077" } }, { @@ -164,22 +236,34 @@ { "界面设计与代码逻辑": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e76ae34bf41d405ab944c91a9b89fe95" } }, { "利用XML标记描绘应用界面": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-01a83815baa142cc8d28bb539c600695" } }, { "使用Java代码书写程序逻辑": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7a88b85492d643c2aa134f5a7f719c90" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-40dad8ea8c584e538188f264921d358f" } }, { @@ -189,25 +273,40 @@ { "创建新的App页面": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f2692571b01a4b7c8df2a08758df8f03" } }, { "快速生成页面源码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2d600f747a7e4634a5ea8ed73f07e0a9" } }, { "跳到另一个页面": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-adbb2c3cdfbe41b0840a7a7c4fdd6609" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-13aa65916ec849cab372efce0676e211" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ea1dfaecf16849f1915777856191982d" } }, { @@ -221,22 +320,34 @@ { "设置文本的内容": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8baddd64d71748e5b7c5aeb6b05e7e30" } }, { "设置文本的大小": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8d7fa907d8dc46cbaea1e9a799e1ecf3" } }, { "设置文本的颜色": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-de2231b7a340472891f3e93a025c3597" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b01431b2fd2740b3813b07f45da39e76" } }, { @@ -246,22 +357,34 @@ { "设置视图的宽高": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f9540cf445e241268746f5ba7ead817d" } }, { "设置视图的间距": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-66f2c6de05044142ba0eb083de0989df" } }, { "设置视图的对齐方式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2ec911c139654d6a80a10f030c2a707a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2bc43a0830f841fd846dd473dd5deeb9" } }, { @@ -271,28 +394,43 @@ { "线性布局LinearLayout": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3adad1c211b144ae8478ec0f788d0b85" } }, { "相对布局RelativeLayout": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-98010440dc1649f2a4a79f9abec22606" } }, { "网格布局GridLayout": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dfbedc93bf69427797198aac51c6594c" } }, { "滚动视图ScrollView": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-56a84f6c1577488e978661ff2bb840ed" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d0ffd723d534447cb18503f5cc4b15c8" } }, { @@ -302,22 +440,34 @@ { "按钮控件Button": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ee914404f4f9409b936ec37463da1fa2" } }, { "点击事件和长按事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b0259604e2a6488aa26f8a19ef3ed0ab" } }, { "禁用与恢复按钮": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2d46e30029c64664a8c8ce7c2e69a5f8" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ca4e6241a0ec44caa9260b923ada6d87" } }, { @@ -327,22 +477,34 @@ { "图像视图ImageView": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b9d3d1e2f8a042b68670b6a1b13fe6ca" } }, { "图像按钮ImageButton": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-780eb548a24545fc99f10380f295285e" } }, { "同时展示文本与图像": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-39ff24fcccb248fea35b8ae38bd26ca3" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7d1b4436d24645a0a8d6afaac9ac4e1a" } }, { @@ -352,25 +514,40 @@ { "需求描述": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-22f75de5506a4b75b14c8f7c9d69e393" } }, { "界面设计": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4cf95f2d2a324476ae306ddac177ccc8" } }, { "关键代码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d574dc21e8a44b7595230569f3260285" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-69e3fa51384f4167a4eada7aad89d1de" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-85350e5aa9b940868c1f176a61094720" } }, { @@ -384,22 +561,34 @@ { "Activity的启动和结束": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ab3a5135ffe04d41b7607bee3ef6979d" } }, { "Activity的生命周期": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c6d5fb8103dd4d11a7bc643141f332b4" } }, { "Activity的启动模式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-12532f201b7645b8869a21092e4086c5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-33fd0c97d9334cc989d9f8bf736cf8d8" } }, { @@ -409,22 +598,34 @@ { "显式Intent和隐式Intent": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-81622f2d42c94356b215650b493d9404" } }, { "向下一个Activity发送数据": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2da4c8f2b9534d6cb91958910af4f1e0" } }, { "向上一个Activity返回数据": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aab17a2d23384494ab89dce3646e7056" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3633f802baff4c8a9c81845deee4b8ab" } }, { @@ -434,25 +635,40 @@ { "利用资源文件配置字符串": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1ec1326b2bda4428bf3bb6c37ce56c2b" } }, { "利用元数据传递配置信息": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c774002143a1450dab798c251c0d423a" } }, { "给应用页面注册快捷方式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-19f6f15ffc694f1d9081a129db7d5f21" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2058cc2f2ad74ce09a4936c4851b2fac" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-501e2d45bb6d45ff885b7fc258255ae6" } }, { @@ -466,28 +682,43 @@ { "图形Drawable": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bbb470af876e47fca2b99ee8328f259f" } }, { "形状图形": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-52bafb19ed334d2893ca108d964c03cc" } }, { "九宫格图片": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e0cf134877bf41bab69d20eb2ccf8e69" } }, { "状态列表图形": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-169497f32e63438ea560cacfe662a137" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-add095dd9946408fbe8b56ca9a91859f" } }, { @@ -497,22 +728,34 @@ { "复选框CheckBo": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-26723519611d4cfa891a0572c461dbb8" } }, { "开关按钮Switch": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d7e926e7ae5742dcb13ee6fb3caeb31a" } }, { "单选按钮RadioButton": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-15097996e30042d6820da212ccc73c2a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bcce2f9c3bcf4c49b913ffdb286b5f01" } }, { @@ -522,22 +765,34 @@ { "编辑框EditTet": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5489c44c1af4409f97e41d565eed40b3" } }, { "焦点变更监听器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-25574be827384ecb95c537567de71b8d" } }, { "文本变化监听器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e94402e16588405faa0a02494cb356e3" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c99b07aee17545848078f6eb68a3a867" } }, { @@ -547,22 +802,34 @@ { "提醒对话框AlertDialog": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-14237b3069174c96bc99f28d2f875d61" } }, { "日期对话框DatePickerDialog": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9e66dd506ec94dbda3f4311834361aaf" } }, { "时间对话框TimePickerDialog": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c7310d0a3eba434686612fa3cac49746" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-664645aa2c184ab79d44d92be842b290" } }, { @@ -572,25 +839,40 @@ { "需求描述": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f021352b652f4a7a91136c50e5fb0d8a" } }, { "界面设计": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b4999c13eaa44fa594a9c7d4ea7517cd" } }, { "关键代码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a61fd1ced46846e58b082b7813f0b1c3" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8c2acf5c28914dcda2e91b0a426b773e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-562878e404cf41cfab6e2f509a2d46e9" } }, { @@ -604,22 +886,34 @@ { "共享参数的用法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9bfc2b2a434b45b5babbb9e15ce45066" } }, { "实现记住密码功能": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ea5c9dec411b4ffcb740d7edca9766a0" } }, { "利用设备浏览器寻找共享参数文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dbea9e7acaee46db9dea6a0d47166c44" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a9b2ff4c88cf44ae843fb87442e958e6" } }, { @@ -629,28 +923,43 @@ { "SQL的基本语法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ad5f91aa52c9426d869cc26746efac84" } }, { "数据库管理器SQLiteDatabase": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-273aaeb592724b83a231bd37b55ec825" } }, { "数据库帮助器SQLiteOpenHelper": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7b3b2cfa94ab4a21a7f9c1e85998ef93" } }, { "优化记住密码功能": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9fcfa6b414e5452bb4685a6bc9e5cbd2" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bf66b6be30134123bb5d73a261381621" } }, { @@ -660,22 +969,34 @@ { "私有存储空间与公共存储空间": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7a10e8297f5c4cf9aa497fb2276e6cc8" } }, { "在存储卡上读写文本文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f987eac8b42d43a7a7fcc43afb037d83" } }, { "在存储卡上读写图片文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3a339f8b74c5464ba234d631a829607c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-14b321d3ad1d4474a5855373797eef71" } }, { @@ -685,22 +1006,34 @@ { "Application的生命周期": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6b91966ab57d42fc82fec6f8e289d17d" } }, { "利用Application作全局变量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ecb1f2e859684a18b85b4c3b2e5f48e4" } }, { "利用Room简化数据库作": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-51df5758634f47c1ae76e97f10f34635" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ceda0fe4e8dd4a9a9352bbf29b6f4a0a" } }, { @@ -710,25 +1043,40 @@ { "需求描述": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c97a64b19f604dac8a3916b144efc1e2" } }, { "界面设计": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3eac242c69dd467d8b12d1ebc22ba48a" } }, { "关键代码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e9fb4b36a59a4107995c2866c47d086d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4ae3247745e94dc8a31e9ee031dffd78" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9b6b5e0be4a24ac8862be323cd9d83f4" } }, { @@ -742,16 +1090,25 @@ { "通过ContentProvider封装数据": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ef1496c187434f9780511d0a38202389" } }, { "通过ContentResolver访问数据": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-776db1ff6a1743e68f39d4966f5608f1" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-94324da557ea4b90a834340b4b45ca9d" } }, { @@ -761,22 +1118,34 @@ { "运行时动态申请权限": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a299aa239899451fab67d561aa6be86c" } }, { "利用ContentResolver读写联系人": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e99e057d1e014d82887d6c0c1cb4f1e7" } }, { "利用ContentObserver监听短信": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f20ef186a4a048a9a0d56d65e6e9581a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e4414962f37344bca67d630b137379c2" } }, { @@ -786,25 +1155,40 @@ { "使用相册图片发送彩信": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5e902728263141789e28a17f5bc275c7" } }, { "借助FileProvider发送彩信": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a015ad3d36aa4548b1f8e59e762cb80b" } }, { "借助FileProvider安装应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d5576affb05b4f348a57a439b9be79c6" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9687914855974193b065156c0b9bdc44" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-50983350be4e45fa8ac612c0daddce0f" } }, { @@ -818,22 +1202,34 @@ { "下拉框Spinner": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a0b553c49ef145e78969251097b55d67" } }, { "数组适配器ArrayAdapter": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d78c7ee90c0440668529b22c8783181f" } }, { "简单适配器SimpleAdapter": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f68651d6a66f4f1cbf5d8c56eadc1757" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e399062434334aca99764da587765a85" } }, { @@ -843,22 +1239,34 @@ { "基本适配器BaseAdapter": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f05c64d2d525496b8395f69cb33862a4" } }, { "列表视图ListView": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-356a646e504c41ddb592846205c159eb" } }, { "网格视图GridView": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-df7365c955ea440195309e17f44b7dd1" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f3103d5a64a34103b9269ebb030b0340" } }, { @@ -868,22 +1276,34 @@ { "翻页视图ViewPager": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-48b59b8725ce47639c1179d3d77096ac" } }, { "翻页标签栏PagerTabStrip": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-61f67272775049c88757d2b636570d02" } }, { "简单的启动引导页": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-14d8701b617f4b96b2550b6eb78b5a87" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bae58caa5bbf4f9dbf3e6d4a7d1a1989" } }, { @@ -893,22 +1313,34 @@ { "碎片的静态注册": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-381f995cc1d94ef09f82012b201d2568" } }, { "碎片的动态注册": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2cab863875c64e73aa2380ac45848a9e" } }, { "改进的启动引导页": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e3f874d69d4243dd8e4cb62eca697c4c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-db2000699bcd4b68bf4f1fab8281815d" } }, { @@ -918,25 +1350,40 @@ { "需求描述": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7948b98f227d46d392d9303e01556b67" } }, { "界面设计": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-de614f6651104a03922f54de9758d545" } }, { "关键代码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6f6c251de5214fc49b3683ed22102bab" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5bc9db750fa54bfa826b459928d9e90b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-64bbb35d74854906979d6c47a20bd6e5" } }, { @@ -950,22 +1397,34 @@ { "收发标准广播": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c4e5861cfd614bd8b7d9b10f70ce06bc" } }, { "收发有序广播": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4ff77e14ad884ffa8d200ad4a119abf6" } }, { "收发静态广播": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6f2fdb5f228145d098bbb068543468d9" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a707c8ea80e44662a557d3549c4a49e2" } }, { @@ -975,22 +1434,34 @@ { "接收分钟到达广播": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8a8ffac964c64016a17c1664dbd8c08b" } }, { "接收网络变更广播": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-91fda0bb7fae4a6c9e41fbe3f7d5f6ba" } }, { "定时管理器AlarmManager": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-46c30ad3f7934d83aaa87cf25944739d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-30f42f99849240b489f499209a1fe47e" } }, { @@ -1000,19 +1471,31 @@ { "竖屏与横屏切换": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-40f5937ec2724219bbddd165320f96cb" } }, { "回到桌面与切换到任务列表": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7a466f2fd08e4246bf2e4ab889a567f8" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7dc714d6a1544634994f9dfda89b7655" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d702d5d196304e0d87930b232b26438d" } }, { @@ -1026,22 +1509,34 @@ { "视图的构造方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5a2a13f2118a4f099b8e30132ad875ec" } }, { "视图的测量方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1a13a9ceef6b4ab2921e59f2d4d80647" } }, { "视图的绘制方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d2c88c7bfdba4190a8a424d10e75220c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-86b4c1902dad4108820e9428855d228d" } }, { @@ -1051,22 +1546,34 @@ { "自定义月份选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9ff44542a7e44fa3a35918bd38f55888" } }, { "给翻页标签栏添加新属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7ffded0f9eba43939bc3c682e2a0a5ac" } }, { "不滚动的列表视图": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5d2406cec35648e0ae6287d36a3acf3c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bb2c4a668a194ddab3b99da76959df7f" } }, { @@ -1076,22 +1583,34 @@ { "Handler的延迟机制": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7c11813de6f54d1996429d38ab7ba10d" } }, { "重新绘制视图界面": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bec20427362d40f7b11b92543032ece4" } }, { "自定义饼图动画": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e9193b637fdb436fbb2dda99d94b6b9b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0f352f719ae644e3a421494482c15f26" } }, { @@ -1101,25 +1620,40 @@ { "需求描述": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8fbe8a766523458498261e23257b91ce" } }, { "界面设计": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-27e91b57966c4a788855b455f4f97475" } }, { "关键代码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e557bc29d1ed4ee3bfd0fc5a28289581" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-526d56b7e22440f19ee08b47711cf2ab" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a577dea37e874e5e972f5f229de330cf" } }, { @@ -1133,22 +1667,34 @@ { "通知推送tification": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7f3063f9d6124060b190a58f792a6f5a" } }, { "通知渠道tificationChannel": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e38a4d4108bb4269b3416f2aebedaa61" } }, { "给桌面应用添加消息角标": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1dccc1f521f1428ca3bd9601702e46b8" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d564b622a9f345469dc75819e8f8d13f" } }, { @@ -1158,22 +1704,34 @@ { "服务的启动和停止": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-703357db523242439aa3707b4d10a0c8" } }, { "服务的绑定与解绑": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e11e2c0bfd3448c58215f54c1950888f" } }, { "推送服务到前台": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ba8efb6735674ac0ac6a8e42677771a1" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5e12ac35f29d46dabe72577eea9771dc" } }, { @@ -1183,25 +1741,40 @@ { "分线程通过Handler作界面": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-89ffd26b69ab48259d9bfde91bad2ecc" } }, { "异步任务AsyncTask": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5d6efdcca48d4656995984942f9477e8" } }, { "异步服务IntentService": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f7b13f41977544508273cb24394e82b3" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0570ff38ec234ab2acf7edf73253a05b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-28c7d5cd77e14f2eb430de0ecaf1613a" } }, { @@ -1215,22 +1788,34 @@ { "利用BottomNavigationView实现底部标签栏": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5575a554c1e64218a5d7da181b9d5db2" } }, { "自定义标签按钮": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7b851a2c455746b484f017ba7a33e23b" } }, { "结合RadioGroup和ViewPager自定义底部标签栏": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bea2117384884bd99f296d020518fbbb" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b6ee584366534979a1b2353c757905c9" } }, { @@ -1240,22 +1825,34 @@ { "工具栏Toolbar": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c08d3f684a884092a7711673396ae18a" } }, { "溢出菜单OverflowMenu": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0d5305ca2a1d4a30931f84e82660f446" } }, { "标签布局TabLayout": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-89d76328327b4729a0dd782f5770d3e4" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f02dfc848ceb4f9594d286c292042cc7" } }, { @@ -1265,22 +1862,34 @@ { "循环视图RecyclerView": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d0bc326b93e24efd84e64acf52994715" } }, { "布局管理器LayoutManager": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3b6cd4233abd4fcca2f9fa2e315daf55" } }, { "动态更新循环视图": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5782a4f2c748464e8091763c9bf0f984" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0fc9ebf982b5459ca997768b3a6eb83f" } }, { @@ -1290,22 +1899,34 @@ { "下拉刷新布局SwipeRefreshLayout": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1646eb3566ae4b40a6e0e271f33a0c7f" } }, { "二代翻页视图ViewPager2": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bc6e99a84ca944348d03123654174b90" } }, { "给ViewPager2集成标签布局": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-086703aa254f4a6f8953984037acd11e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f9751174e4164fa7be38ca50eb95515e" } }, { @@ -1315,25 +1936,40 @@ { "需求描述": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d92e654014704690874fcbcb9348bd00" } }, { "界面设计": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-75ebe88f244e4bc68ed644d60e7e6b72" } }, { "关键代码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-14480a8463ae490b9b19a16f4023ef9f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cf07e1da99a5444e8692a0ac164f79f5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9aa6011521f345b49aae0e09be931726" } }, { @@ -1347,28 +1983,43 @@ { "使用相机拍摄照片": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-59860005020a4c1ca377e0356df3aa97" } }, { "从相册中选取图片": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b1dd672294bf48dba19e896a31271411" } }, { "对图片进行简单加工": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3e8e167b503b4405bd89ad9537480604" } }, { "图像解码器ImageDecoder": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-194fbfa0242c475abd790b602745188c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-95247aa07fc149cfaa64b3f8645955e3" } }, { @@ -1378,22 +2029,34 @@ { "使用录音机录制音频": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1e1dc0db78ea45b8944fa08e8395bfb2" } }, { "利用MediaPlayer播放音频": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0bc2cd181d99442ea9a013c97653ebb9" } }, { "利用MediaRecorder录制音频": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-40bbf824112a470fbedaaa77f90c799b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2c2a14f875df4191a27a8bfd3fc7fdc7" } }, { @@ -1403,21 +2066,35 @@ { "使用摄像机录制视频": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cb9e951a244f497082c0e6138045e6b1" } }, { "从视频库中选取视频": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-de5c10cbad3649fca734ff70f17564a3" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2106dc742e03497d844f30143c1ff3fc" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4e31491078354ab697e26a18ec73f52e" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/6.\347\247\273\345\212\250App\345\274\200\345\217\221/2.IOS App\345\274\200\345\217\221/config.json" "b/data/3.web\351\253\230\351\230\266/6.\347\247\273\345\212\250App\345\274\200\345\217\221/2.IOS App\345\274\200\345\217\221/config.json" index 3db3a82275fc73b08a5071add6379bce1e0113e7..edbd69d78eb920b30a5ca945ede63c22616e3ac2 100644 --- "a/data/3.web\351\253\230\351\230\266/6.\347\247\273\345\212\250App\345\274\200\345\217\221/2.IOS App\345\274\200\345\217\221/config.json" +++ "b/data/3.web\351\253\230\351\230\266/6.\347\247\273\345\212\250App\345\274\200\345\217\221/2.IOS App\345\274\200\345\217\221/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-cf0a1cdc3e0546a984632d16bc597275", "keywords": [], "children": [ { @@ -13,16 +13,25 @@ { "新增拖放交互编程接口": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bb7ea48224f2464a950ba5ec42aa62f1" } }, { "其他新增功能": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4a6d663297914d4f86562cf46112f4e8" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5d3b11dbbc6d4258a4f006178df172d3" } }, { @@ -32,28 +41,43 @@ { "安装Xcode开发工具": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6df1a3cedce84984aebf598629d7046a" } }, { "了解Xcode开发工具主界面": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5b18b2150afd4edcb6f746b2119eca10" } }, { "Xcode开发工具的使用技巧及常用快捷键": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-81692b27510448cf8177ec09597db6a9" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-874e5d02e2e0468a99901c7fe4f021aa" } }, { "创建第一个iOS项目": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-68234b5b47564f5298bf189c0fdd78b2" } }, { @@ -63,31 +87,49 @@ { "Git与Github简介": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bae5a9a6da7149169569163dc9550636" } }, { "注册GitHub会员": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d447bb2bbf044b7081d7805472c1ad07" } }, { "使用Xcode创建Git仓库": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bfe0f183194046d99589df72cccd7842" } }, { "用Xcode建立本地Git仓库与GitHub代码托管平台的关联": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-deba47a0d9284460b3cda8583b7d6552" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b6b019cc55b34e508a2814467c416248" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ba7110cbcfec448eb9cea1905f345fcb" } }, { @@ -101,16 +143,25 @@ { "MVC设计模式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cf4e6ec3ab6d440f86f2830ad01e1283" } }, { "代理设计模式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-baff3c4c6bbb49868f3823f0f81f073d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-51e65deb9d7647409ef2a42d807bbbd5" } }, { @@ -120,16 +171,25 @@ { "UIViewController的生命周期": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-db462d2c282a4a2aa2896064538567b7" } }, { "UIViewController的视图层级结构": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-42cd21079f0741aa96e7ac6268e9ad49" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-96f92c098ca841988577f98b32858065" } }, { @@ -139,22 +199,34 @@ { "使用UILabel在屏幕上创建一个标签控件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-009ca57f63894204907c377f6915a9a3" } }, { "自定义标签控件的相关属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c8da79b179e0452b8fc28c881707303b" } }, { "多行显示的UILabel控件与换行模式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9e7d640df9d8411e9fc915d538964e87" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fd65f8d6d417417a8c84857e06bae19c" } }, { @@ -164,16 +236,25 @@ { "创建一个按钮改变屏幕颜色": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1b289c4d436c4f8e923bf164b577fcaa" } }, { "更加多彩的UIButton控件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c799dee4f482498a85713996ecb68c88" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7ad1ddd9b4534bba8d74ec50a198545b" } }, { @@ -183,28 +264,43 @@ { "在屏幕上创建一个输入框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-42e2c2601228436d8ce16cf8d8c733c1" } }, { "UITextField的常用属性介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f2a80394fb2d411c928805905fb3e34b" } }, { "UITextField的代理方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d94e539cabe24d9088e8f9d2e1e055b6" } }, { "实现一个监听输入信息的用户名输入框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b47d2163595e413b93834b47f8e8a7f6" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c68149ee9da145bcba7fb0f88008def6" } }, { @@ -214,22 +310,34 @@ { "创建一个开关控件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8d64123142f4476eb0c45fcdbedac426" } }, { "为UISiwtch控件添加触发方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-342ebbb6193b44e1b39caadc089bb138" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a1f0d80a096d40f6a7b0e941a0c0a3fa" } }, { "分页控制器——UIPageControl": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0ef310f6ace44ddc90f834cc166b5393" } }, { @@ -239,22 +347,34 @@ { "UISegmentedControl基本属性的应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e9fa3a24e913451b813d97ab8b5a55e6" } }, { "对UISegmentedControl中的按钮进行增、删、改操作": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a94c5e95b60d43b0b0777bb9daae63a6" } }, { "UISegmentedControl中按钮宽度的自适应": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d225625465b74df2b2fa75dbf5ce9e52" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4be44bc34dd844f79a9d82e9f229dc5b" } }, { @@ -264,28 +384,43 @@ { "UISlider的创建与常规设置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-11918a46281e4284b784f8c3155bb0af" } }, { "对UISlider添加图片修饰": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e45f015d970648fd816139f8b1a2b907" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b536366f7b164d7cb420f6b9e8faefe4" } }, { "活动指示器控件——UIActivityIndicatorView": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a1d180c1bef74bc399bf6d57a0bf6c56" } }, { "进度条控件——UIProgressView": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9dc59b48f21c48ac84359eb49f2e5281" } }, { @@ -295,16 +430,25 @@ { "步进控制器的基本属性使用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1baa9158bc074c3aa113036ee9e3b706" } }, { "自定义UIStepper按钮图片": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0140745357594317be6f2d0c6c059ca1" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c3db91bfde5a4743a010213492214257" } }, { @@ -314,16 +458,25 @@ { "创建一个UIPickerView控件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2da3a4b63e1a4d3cb78fed0207c62042" } }, { "UIPickerView选中数据时的回调代理": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3248ab2c8e9f4133b9a04e0e283257d5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-388bf478021044cfb6d1b5635397b1d3" } }, { @@ -333,22 +486,34 @@ { "创建圆角的控件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7d919edf67e34960bb24975969f62c11" } }, { "创建带边框的控件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b6972541ea814357addfe571bcb7c9ed" } }, { "为控件添加阴影效果": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-99dea625720e40be8c0decd20a97b5ff" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9b908994b46b4a3b9bf74aa43124d961" } }, { @@ -358,16 +523,25 @@ { "UIAlertController的警告框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d5bf2e9ebfb34a8594f1269d59bf1e74" } }, { "UIAlertController之活动列表": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-10e3977918174e25b16becf9f4eafcab" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-869b3cb5467b429da9bb4b80f2f9ddfc" } }, { @@ -377,31 +551,49 @@ { "搜索栏控件——UISearchBar": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0b5fd70773ea4fdbb93cb41c3312423d" } }, { "日期时间选择器——UIDatePicker": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7015aba3950e4964ac08b54f6eaadbcb" } }, { "警告视图——UIAlertView": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c3a800e3399b4af8910bfff8efdce5e5" } }, { "活动列表——UIActionSheet": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-82e3934020d14c029a2bfd61bddc322c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f6b29f7075bd4b7294da544fc4456f96" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-777b6a38bb404a6c9a0917ae3cade5d1" } }, { @@ -415,40 +607,61 @@ { "导航控制器的工作原理": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f38c0a1d04404e8c9c61235bb3c25dd4" } }, { "使用导航控制器进行多界面搭建": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8aee82da6f9d47e99e402899b2b328fc" } }, { "导航栏UINavigationBar": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aadd6e187b2441948df85b0f71af086c" } }, { "导航按钮UIBarButtonItem": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-044298250faf4b6cbb667517ed4999a8" } }, { "导航控制器的工具栏": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b5c586d7af3741f7b86c16d53b8cb869" } }, { "iOS 8系统之后导航控制器的一些有趣功能": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-de17259e49e44068a0a7604c9875b204" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-18f7917d64de4dc6b44738c892086f98" } }, { @@ -458,22 +671,34 @@ { "标签控制器的工作原理": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b84c126730d6440e823cac9774d773f0" } }, { "标签控制器的基础用法解析": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-eb6ea3c65d7441bea91e3ccf311ba4d1" } }, { "关于UITabBarItem的使用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c6ee6fc05dc944a9857c96140bf327e5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1d4e750538224acc90b06ba395e6acaf" } }, { @@ -483,16 +708,25 @@ { "使用UIScrollView展示视图内容": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6e55fd5a05514fa2af34268cfa1e5d88" } }, { "UIScrollView的代理方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f0000667e0204b57a6ae271e18e98db7" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-70e0ea93841b4eac913e6d32bc6de546" } }, { @@ -502,40 +736,61 @@ { "App网络传输安全策略": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-57e2796755cc465a8326c0443eb8a72a" } }, { "通过网络请求加载UIWebView": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8c94e4a76de142d09eb5d4da7ca0c17b" } }, { "通过HTML字符串加载UIWebView": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d08bb652dd5e47d5b470fce8411644fb" } }, { "通过Data数据加载UIWebView": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-15b9f5c49c3843c5afa38283f4184aca" } }, { "UIWebView中常用方法解析": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6b0208a6f6f2485fa6bcc93b83d38260" } }, { "UIWebView的代理方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c10f7e613c9040e9b948737920a4c78a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7549f74816914f7c98f17bfa49fdefe3" } }, { @@ -545,40 +800,61 @@ { "UITableView的创建与复用机制": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-420a2a163da94d6da4011841d450a796" } }, { "创建一个表格视图UITableView": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c779ae7cfc7d4edebac685d9ff558f7f" } }, { "关于表格数据的载体UITableViewCell": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9cc94935b41143b2bc5443268e781d64" } }, { "设置UITableView的行高和头尾视图": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2646aa813af6413dae04c66e04e96c7b" } }, { "UITableView的用户交互行为": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-282485a7aa584f01820580f9a14a5c83" } }, { "为UITableView添加索引栏": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2ae5300845b544e5a9a1668529f1c1ed" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-77065a6e43334ac2ad006bb45104e977" } }, { @@ -588,34 +864,52 @@ { "UICollectionView控件的优势与布局方式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f3c70635409648d88d88e45f6633bb44" } }, { "使用UICollectionView进行九宫格式的布局": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-71e467aba2204b15a7336c9c97bd9ea0" } }, { "创建更加灵活的流式布局": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-77965851a0354ead9cc4a4daac80f516" } }, { "自定义UICollectionViewFlowLayout进行参差瀑布流布局": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2c9a04921b7640d6924223ae6a9f8761" } }, { "使用UICollectionView进行圆环布局": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-59c033f86c8e4b9c9fc6c0df325baaa5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8344031ce6cd4899a7a13e2f9b1a8703" } }, { @@ -625,25 +919,40 @@ { "应用内评价组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aed96bdbff774cbe95a391d002e9814c" } }, { "进行系统拨号与短信界面的调用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a9af6c17ca6c43b1b56e9d516d140166" } }, { "拖拽交互体验": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b8c588547ed54a6196bcb659246bed1b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-acba4d0c1b574f828c543b316a58a932" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-06d68bbee1614c8fa29958ef4605d333" } }, { @@ -657,28 +966,43 @@ { "申请一个免费的API服务": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-84e66763f8a74594a39003603b4cf929" } }, { "使用NSURLConnection进行API服务数据的获取": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b3d5ac04c0934a08b7eab8a6cda3025f" } }, { "使用NSURLConnection进行异步网络请求": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fa6fcb4d681145f296a0a136cf23d521" } }, { "使用NSURLConnection类通过代理回调的方式异步请求": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-eb11b448f94c4ccf9580450de5f467c4" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fc46ff16727745b8afe113628bab62d1" } }, { @@ -688,16 +1012,25 @@ { "设计自定义的网络请求连接类": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fe93b678d0084d4aa6c06b3b80972b6b" } }, { "设计自定义的网络请求管理类": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dd0fff00c3414e65806c4c0f342a52d8" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c8fb8a96e4c84e5db13594c7c8644e8b" } }, { @@ -707,22 +1040,34 @@ { "JSON数据简介": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1667504063404ced9bcef9fe59b72744" } }, { "在iOS中解析JSON数据": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-022e8ef74f744ef792af687a6021c54b" } }, { "数据模型Model类的设计": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6106bb24e9f943399df8de0ad7cb4adb" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d01b75fe49fa41ca96c3f444dbb60252" } }, { @@ -732,16 +1077,25 @@ { "在MAC上安装CocoaPods工具": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-09905bf4f732495c8fb956f1bfe7ed14" } }, { "用CocoaPods搭建一个使用第三方网络请求框架AlamoFire的工程": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-96b8f31e0b904ea5b74333c24e11ef1e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5e8b75236eec4e14bef2b3190059f9a2" } }, { @@ -751,19 +1105,31 @@ { "详解HTTP/HTTPS协议": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-84d02f58c4b04d148f9f183c336d5e35" } }, { "使用AlamoFire进行网络请求": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a7abb99bec7243a4aafed42d8a295529" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-77c0b83a26f840929ce21b8a4fff1aa4" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d0a95441c00d41bfb0081e0bd419a445" } }, { @@ -777,22 +1143,34 @@ { "使用AVAudioPlayer进行MP3音频文件的播放": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1a7439c6ffd44e3fbf9b7c41872db7b1" } }, { "进行音频播放相关属性的控制": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f359674b7445400aa0abae0c56ebb072" } }, { "后台播放音频及用户交互的优化": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f946e5a5718b4f0fb06657742697e2c5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-012e1ecb625f41d2ad43e464a75378a4" } }, { @@ -802,22 +1180,34 @@ { "使用MPMoviePlayerController向应用中嵌入视频模块": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3d4a2f497ef749bc9a4b20824a9a32ab" } }, { "MPMoviePlayerController常用属性与方法解析": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7b817cd8036b42119a1f72128413752b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1e3e1181214c43389ff46161634fc4dd" } }, { "视频播放器视图控制器——MPMoviePlayerViewController": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a23a23bc3a804e1196e8def270b5ba8a" } }, { @@ -827,19 +1217,31 @@ { "使用AVPlayerViewController进行视频播放": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-15b6d27f325d4bd28adc1b35a4b33dd1" } }, { "iPad的画中画播放技术": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8e37f8817d6b4a52bcb6615afbdf8d41" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dc7c288d1bac4f3c815f523b1b4ac574" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b63650cc90c84e65be40df0c9fb8ceb3" } }, { @@ -849,7 +1251,10 @@ { "使用UIImageView播放图片组帧动画": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dfa29d68911a45bda4487746d70a732d" } }, { @@ -859,28 +1264,43 @@ { "执行UIView层过渡动画的3个类方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3b3405b9ed3a4f63a3940b9a3fd06545" } }, { "创建UIView层的阻尼动画": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-008aa96565164e99a2f02d5351637b1d" } }, { "动画参数配置与组合动画": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b2c0d64c16204dffb44bd6b14d47c341" } }, { "UIView层过渡动画支持的属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-888278559c3042688a5cbbadf54d44a4" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-92881eff561e4501a9b9f4225cc0bef4" } }, { @@ -890,16 +1310,25 @@ { "使用commit方式进行UIView层过渡动画的创建": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-63cc2cff9696496c9c765f7eeb8f0d37" } }, { "两种UIView层动画创建方式的优劣": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2c619e12dc95493ea63d9693ba468f95" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bb4b0c9aca804933ab0ed2c96dc5b193" } }, { @@ -909,16 +1338,25 @@ { "重绘UIView视图时使用的转场动画": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-da7d46f4043b46aa9ecae483d10bfe15" } }, { "切换UIView视图时使用的转场动画": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4897b91f06f24000bd117182fd37d0ed" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-176aa9b1a27b474e80a2f5bc9c1fe6cd" } }, { @@ -928,70 +1366,106 @@ { "锚点对视图控件几何位置的影响": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-61432aa124eb492fbd6c5724aff887c3" } }, { "色彩梯度层——CAGradientLayer": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7e8f644f6d63424990b2715c848d951a" } }, { "视图拷贝层——CAReplicatorLayer": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dbc75d8f29b845b3b50ca6a4ba8d9cdd" } }, { "图形渲染层——CAShapeLayer": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d997e33b52cb4049ab78eb5306381456" } }, { "文本绘制层——CATextLayer": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3350da71c6cc44438ec570eec402840b" } }, { "CAAnimation动画体系介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d133e860f9264a4da89f6ddd2daedc82" } }, { "使用CABasicAnimation创建基础动画": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-15c6fe7f7cd54f9f888147e080f14e80" } }, { "使用CAKeyframeAnimation类创建关键帧动画": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4a676928b146406294f8970d361e247c" } }, { "CALayer层的转场动画——CATransition": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a6b15ffd0b5b4f3d81608fbc9415cbe1" } }, { "CALayer层的组合动画——CAAnimationGroup": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-16e8b4af0eda4334a44f5a2a174aafdc" } }, { "CATransform3D变换的应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-62775f72e8104d58831cf0f384c8a934" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-981a8b7ce794497e934a10e261dba633" } }, { @@ -1001,22 +1475,34 @@ { "粒子发射器——CAEmitterLayer": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b18946bc8a374cf5a8d02d4f63b7bfc2" } }, { "粒子单元——CAEmitterCell": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-edea3a3b96d44ababd81ac29409aac6c" } }, { "创建粒子火焰动画": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4d5e1ec170d442c48e6e5e628eed440e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ee301a7c90ab4dab8db877fff8654bf6" } }, { @@ -1026,19 +1512,31 @@ { "使用UIWebView进行GIF动态图播放": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-69ac321316a14d96a5b200db1a34dd0a" } }, { "使用UIImageView帧动画进行GIF动态图播放": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-80188b54ac854b208d5e772932d6d642" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0e91b2ad17e04d5d86cb18c66aca3202" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-41acaf892c104e4a8781c4d1748e19f9" } }, { @@ -1052,28 +1550,43 @@ { "使用手机密码为应用程序添加安全验证": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f065850661064d1ab09d4ea1e806a7ac" } }, { "使用用户指纹为应用程序添加安全验证": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1840d432cde84fdf92e220e3d9ab6f76" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d3d65ae7f1e64eb69aaffd04bbf17c3f" } }, { "使用加速度传感器、螺旋仪传感器与磁力传感器获取设备空间状态": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-228f916e80994227a9399cac52554f01" } }, { "距离传感器的应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f31076ab6f304b338a49b651cd54dcac" } }, { @@ -1083,16 +1596,25 @@ { "中心设备管理类CBCentealManager": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d7ebd785497341409938bfc7acbccaca" } }, { "外围设备管理类CBPeripheraManager": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-11c33536edf74bd8be438ed5b49b4db8" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fa5b460c39804725911381a66902fe91" } }, { @@ -1102,37 +1624,58 @@ { "进行设备地理位置定位": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5b57d3bd0e504a3e9b558ff6ca694914" } }, { "原生地图开发技术": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a0d2537a56b344309a845f183c8afa90" } }, { "在地图中添加大头针及标注": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-85da611fb8604a3da8201337ca85cf73" } }, { "在地图视图中添加覆盖物": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-10e8f63ed2e7438c828d7942107b12fd" } }, { "在地图中进行线路导航与附近兴趣点检索": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1a08aff7939e44a281a8475da93e49fc" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-56b27d0241ab41678ccc6f333af256f1" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b19179ab83254de28662bbe4eb0973ea" } }, { @@ -1146,16 +1689,25 @@ { "通过代码设置视图控件的UIViewAutoresizing模式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ee058e60ceb9425d9a96529d10dc9a0c" } }, { "在xib文件中可视化地配置控件的autoresizing属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9bcd9b6c8b224e70be9ce7c0d022bea5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a42590eafd4c4b209e9d6a760adff422" } }, { @@ -1165,49 +1717,76 @@ { "初识autolayout": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bde0bc5537fd4b77b03f4331b21c9e73" } }, { "autolayout的属性意义与一个简单的自动布局示例": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f1c26e8b6d584a0b9438bad55bcaac1a" } }, { "使用代码进行autolayout布局": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-df03d0e0445c4cd3bfe18f252eceb42b" } }, { "使用格式化的字符串进行autolayout布局对象的创建": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-85ca551884e24540bfca90e35c8c9dd2" } }, { "与约束相关的几个方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5e99112e7bbf4cb78188b9a1f3e5cca7" } }, { "使用autolayout设计一个高度自适应的聊天输入框及动画优化": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7664188b61f24874a200a81542f88a2d" } }, { "使用第三方库SnapKit进行autolayout约束布局": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9da9d84f8cc84649a4ea62e7674709ad" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-37c69566ad80487ab478c1043a7745a9" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-84c7d5a1e2ee4671818d30ded2ad7fd3" } }, { @@ -1221,22 +1800,34 @@ { "在工程中读取Plist文件数据": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-57d9912452284868af9ad2e9ab12abcf" } }, { "在程序沙盒Documents目录中创建和使用plist文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-276785e4fa7946d38f21f121edd9c88d" } }, { "使用NSUserDefaults类进行数据持久化": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e19a44b4dfcc485b9ce3f92a751c63eb" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2a3d1bd488ee4e32ba19a1ee7913ddba" } }, { @@ -1246,28 +1837,43 @@ { "进行单一系统数据类型的归档与解归档操作": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1e21b63406e74eba9e00fe9952a3635e" } }, { "对多个对象进行数据归档": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1e02131b3f9c43f6831d52229cfb2a3f" } }, { "进行自定义数据模型的归档": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1dd436d8089145a991e49bccd95e7a88" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6149437f064647adab13e71ed1584afa" } }, { "小型数据库SQLite在iOS开发中的应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-daccf34888e94472b80c7a94692e1cd0" } }, { @@ -1277,28 +1883,43 @@ { "使用CoreData设计数据模型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9eb4706f688944e2a27046e7a1299d67" } }, { "CoreData编程框架中3个重要的类": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e0ce2ccfec8142fda7fbdb60eb35a57f" } }, { "CoreData编程框架的数据操作": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6fe7bd2b90d34cbea6d9b01dd5a7b8b1" } }, { "使用CoreData进行数据与页面的绑定": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f120484a8e654cf4a56f39070feaeed2" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-89d37dc2a81b4f2ea42499cf8965293c" } }, { @@ -1308,19 +1929,31 @@ { "为网络请求设置缓存策略": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2ea31339441642d08ec1d7e86a98425d" } }, { "应用缓存管理类NSURLCache简介": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-99247853131e4acfb9de965a20efa7aa" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-08290707825148b7877745593c588b53" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-618c87920cc44112b6e1ae5f24b1d70f" } }, { @@ -1334,22 +1967,34 @@ { "使用自定义断点进行代码调试": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9b9ee2feb11d45c987d3cec7d1f105f3" } }, { "添加全局异常断点": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a94b0236b5054180bde8294c9673d783" } }, { "使用LLDB调试器进行程序调试": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-718b847ed1cc48c295ef9bc39a181e0a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5e183163832549c6a7e995f5ad862b0d" } }, { @@ -1359,16 +2004,25 @@ { "几种类型的开发者账号": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-334470aca3fb4e60987e57c648b27fbd" } }, { "申请开发者账号的过程": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7ece940ff6bf4a3797a8e6c690e550be" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d19b7c39758a4a879f6220c478923201" } }, { @@ -1378,19 +2032,31 @@ { "在iTunes Connect中进行应用的创建与配置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-03c741068e9a4e648fd3b1cdff6020d8" } }, { "使用Xcode打包与提交iTunes": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cf4f2f064bc24841b9f8f81863f800bc" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d03752620f0d421782dcadcfbaa14023" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-227933de3c234179bb17a2455777e913" } }, { @@ -1404,16 +2070,25 @@ { "通知类Notification简介": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-66a13e42576c4abeb63ad4a34bf20e56" } }, { "通知中心NotificationCenter应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a4115cbc9b074d74bdea30a21fd16d5b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3bbcc72284cd4650ba94a38fd7b955dc" } }, { @@ -1423,22 +2098,34 @@ { "使用Thread进行线程管理": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e443e192d70243e4b8db993134b21467" } }, { "使用Operation类与OperationQueue类进行多任务管理": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a9bbd6cbb6234f319049ff0a28810c63" } }, { "iOS中GCD编程技术简介": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-87339f07f7164d7e9cfa713737db4487" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f887c473711e4bb28a57f76edf7e20f2" } }, { @@ -1448,16 +2135,25 @@ { "3D Touch的3大模块": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-155d3df69b9e4358be7f472404c86f84" } }, { "Home Screen Quick Action使用与相关API详解": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-30ef433500794d88a771cc9d48a276f3" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-93794c6707274abaa65437e48b5c7628" } }, { @@ -1467,21 +2163,35 @@ { "SpeechFramework框架中的重要类": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4bdbdf3a6a68403a8d6a2302776afeeb" } }, { "申请用户语音识别权限与进行语音识别请求": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-45d9604b23594eaeb679fb3545f6fbbd" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8b14d3f17b8b4a01911491de15e6f186" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ef7fb7802e514ecda4127e5a15c6dacc" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/6.\347\247\273\345\212\250App\345\274\200\345\217\221/3.\350\267\250\345\271\263\345\217\260\345\274\200\345\217\221/config.json" "b/data/3.web\351\253\230\351\230\266/6.\347\247\273\345\212\250App\345\274\200\345\217\221/3.\350\267\250\345\271\263\345\217\260\345\274\200\345\217\221/config.json" index 7235389d18cd5c34591f1425444cfe214cda4523..fb2a2456759d77bcdc4434959a95bb1c3f3c3538 100644 --- "a/data/3.web\351\253\230\351\230\266/6.\347\247\273\345\212\250App\345\274\200\345\217\221/3.\350\267\250\345\271\263\345\217\260\345\274\200\345\217\221/config.json" +++ "b/data/3.web\351\253\230\351\230\266/6.\347\247\273\345\212\250App\345\274\200\345\217\221/3.\350\267\250\345\271\263\345\217\260\345\274\200\345\217\221/config.json" @@ -1,31 +1,45 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-c956af2b06e540ad920295e79f395d88", "keywords": [], "children": [ { "react native": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-afa64556ccb34a3fb9d9d892724b12ed" } }, { "NativeScript": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c5cead91a348426081d41ee08bf2f098" } }, { "Flutter": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b14d5bfc1d6b444a89a93f5399575b3a" } }, { "uni-app": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7334bfb9f4504a0bb79d5060bc506bb0" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/6.\347\247\273\345\212\250App\345\274\200\345\217\221/config.json" "b/data/3.web\351\253\230\351\230\266/6.\347\247\273\345\212\250App\345\274\200\345\217\221/config.json" index 3407cf95a3919655576413ce3c70fe407e0719d7..145deb9386e4c95da17dd346e4cd3ff6ad271788 100644 --- "a/data/3.web\351\253\230\351\230\266/6.\347\247\273\345\212\250App\345\274\200\345\217\221/config.json" +++ "b/data/3.web\351\253\230\351\230\266/6.\347\247\273\345\212\250App\345\274\200\345\217\221/config.json" @@ -1,4 +1,6 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [] + "node_id": "web-de9f9129655b46dd9a5d9dc69ce2e279", + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/7.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221(GUI)/1.Java\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221/config.json" "b/data/3.web\351\253\230\351\230\266/7.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221(GUI)/1.Java\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221/config.json" index f6416a1a57a86a638c71ad1c8742a38349a88fe3..3092d4a034cb9860c3cef19c50c1140948ce41fe 100644 --- "a/data/3.web\351\253\230\351\230\266/7.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221(GUI)/1.Java\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221/config.json" +++ "b/data/3.web\351\253\230\351\230\266/7.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221(GUI)/1.Java\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221/config.json" @@ -1,6 +1,8 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-c199f65f11c84a49983c4d97ff7c0fc6", "keywords": [], "children": [], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/7.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221(GUI)/2..net\346\241\214\351\235\242\345\272\224\347\224\250\347\250\213\345\272\217\345\274\200\345\217\221/config.json" "b/data/3.web\351\253\230\351\230\266/7.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221(GUI)/2..net\346\241\214\351\235\242\345\272\224\347\224\250\347\250\213\345\272\217\345\274\200\345\217\221/config.json" index f6416a1a57a86a638c71ad1c8742a38349a88fe3..7f65f41ab0fc55b92623c7f8dd1c3bc4a385db1c 100644 --- "a/data/3.web\351\253\230\351\230\266/7.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221(GUI)/2..net\346\241\214\351\235\242\345\272\224\347\224\250\347\250\213\345\272\217\345\274\200\345\217\221/config.json" +++ "b/data/3.web\351\253\230\351\230\266/7.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221(GUI)/2..net\346\241\214\351\235\242\345\272\224\347\224\250\347\250\213\345\272\217\345\274\200\345\217\221/config.json" @@ -1,6 +1,8 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-9da384765207478cb090d1210855d664", "keywords": [], "children": [], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/7.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221(GUI)/3.\350\267\250\345\271\263\345\217\260\346\241\214\351\235\242\345\272\224\347\224\250\347\250\213\345\272\217\345\274\200\345\217\221/config.json" "b/data/3.web\351\253\230\351\230\266/7.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221(GUI)/3.\350\267\250\345\271\263\345\217\260\346\241\214\351\235\242\345\272\224\347\224\250\347\250\213\345\272\217\345\274\200\345\217\221/config.json" index 53543fa7642c5fed9e47b300cd42167a69f7cf59..1aac90a2e09bfbe4315991c1c77bf9603470263b 100644 --- "a/data/3.web\351\253\230\351\230\266/7.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221(GUI)/3.\350\267\250\345\271\263\345\217\260\346\241\214\351\235\242\345\272\224\347\224\250\347\250\213\345\272\217\345\274\200\345\217\221/config.json" +++ "b/data/3.web\351\253\230\351\230\266/7.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221(GUI)/3.\350\267\250\345\271\263\345\217\260\346\241\214\351\235\242\345\272\224\347\224\250\347\250\213\345\272\217\345\274\200\345\217\221/config.json" @@ -1,5 +1,5 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-66ebbccbdac6456a9fd165de62cddead", "keywords": [], "children": [ { @@ -13,7 +13,10 @@ { "NW.js和Electron的起源": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e7b7eedc9e0b44d0b11fd789356fd78c" } }, { @@ -23,16 +26,25 @@ { "使用NW.js构建Hello World应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-61d9b03e83a64808b859070a3ca9cd3b" } }, { "NW.js有哪些特性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f1568bd4673f40a981d9cd53e5d4448a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-448f35a79b894c7cb1d2f1d66f44ed39" } }, { @@ -42,22 +54,34 @@ { "Electron是如何工作的以及它和NW.js的区别是什么": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c45168429bb8463e85254a5c6bd6e444" } }, { "使用Electron开发Hello World应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-719af32a03c24af1a8bb7f6da945fd42" } }, { "Electron有哪些特性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8bd2428d6de04a1aba31f2fa44d92a8b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b060a5a871b34d5e96b32ed65e561197" } }, { @@ -67,43 +91,67 @@ { "Slack": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-855743ad97c846069a5ea372acc04c43" } }, { "Light Table": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b3b7f94954714278959b8ffbc04f7ef2" } }, { "Game Dev Tycoon": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-485b1824f3c94b2e85b1c780a149adea" } }, { "Gitter": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b7c6d2aee61c4e4c9cca081bd5c05773" } }, { "Macaw": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c4df351191db417a97647eef8657031e" } }, { "Hyper": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ae8dfdca15f3433bbd9b5d508515dd6a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aae1896e366c4bbda33fd6a4e9bd6dc4" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0ed95cdb4d5341898cf5cb7b7581a1da" } }, { @@ -117,22 +165,34 @@ { "安装NW.js和Electron": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6eb95a3348a0494f9de34f9cd397ca94" } }, { "为NW.js版本的应用创建文件和文件夹": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-85ae1aa55e154294b110475c34e9f6f5" } }, { "为Electron版本的应用创建文件和文件夹": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7cebdbccda0f41f4999633cb5d160555" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cad69b7869fa4cb7af3868e1423198f0" } }, { @@ -142,19 +202,31 @@ { "在工具条中展示用户个人文件夹信息": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bb9fe8c453854670acf6a0de4021a62c" } }, { "显示用户个人文件夹中的文件和文件夹": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c6f035f7109445b98dbd39cd69841fc9" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-41546439213b404c9db71db385489bf4" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fe5925184c62453db8c79c4a6a5179fa" } }, { @@ -168,16 +240,25 @@ { "重构代码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1d0d5a7a25d945d68b049de2d8ba14d4" } }, { "处理对文件夹的双击操作": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f5818214283e446ca7e10b548fdac304" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5b37024940b944aabd048fe2d3d7aca5" } }, { @@ -187,22 +268,34 @@ { "在工具条中增加搜索框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bd743c4f72a54536aebe77dc0038fc9a" } }, { "引入一个内存搜索库.65": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-90736e8553964571ba9d3ccb8730ca4d" } }, { "在界面上触发搜索功能.67": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e17282e117124d2da84549620f09d4b3" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ed5459332266413295eb78226acf823d" } }, { @@ -212,25 +305,40 @@ { "实现当前文件夹路径可单击": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ec8a131a525748fbaf6251e119e7db2d" } }, { "让应用随着文件夹路径的改变显示对应的文件夹内容": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9a1cccb664c84a6b8aa4c8a336c7ad10" } }, { "实现使用默认应用打开对应的文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-67cfefa8b2fb4334840b3342e51514af" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bde039528d614165b0cc9e550778b6ae" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bd345d711c7b40f8b390062aa5d35dd0" } }, { @@ -240,7 +348,10 @@ { "对应用进行与分发相关的设置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-65d4df224e6e4e0e95b7e23346d49c9b" } }, { @@ -250,22 +361,34 @@ { "使用一种NW.js的构建工具": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1a3769db716540ad88ae0bb47be9dfba" } }, { "使用一种Electron的构建工具": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0df7502209744d0cab5ea576812470ca" } }, { "设置应用的图标": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4d3d97f1ab5f4a1f9a6f6a0a845f6984" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bc06d7bc71b844c699cbda896a8ff500" } }, { @@ -275,30 +398,50 @@ { "Windows.操作系统": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ccb25cf9b0184f12b32fb03671fd149a" } }, { "Linux.操作系统": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a74df3c4dfaa4e7e8d359847b7bb87fb" } }, { "Mac.OS.系统": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-673b42ad582240cbb88a80efdaa89c1b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-430736f7d5474b88a133bd126f1e56b9" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-87bb4aee6a284de78f7c2fd59f9d1273" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9c20f50d35f64c8fae8d0e6a8aac5c66" } } ], - "export": [] + "export": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/7.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221(GUI)/config.json" "b/data/3.web\351\253\230\351\230\266/7.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221(GUI)/config.json" index 3407cf95a3919655576413ce3c70fe407e0719d7..0b78ce37f43a87f56d43c415ab8c8ef55f4e25eb 100644 --- "a/data/3.web\351\253\230\351\230\266/7.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221(GUI)/config.json" +++ "b/data/3.web\351\253\230\351\230\266/7.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221(GUI)/config.json" @@ -1,4 +1,6 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [] + "node_id": "web-5430a29bfa65436485a6e7bbc3e6df9d", + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.web\351\253\230\351\230\266/config.json" "b/data/3.web\351\253\230\351\230\266/config.json" index 3407cf95a3919655576413ce3c70fe407e0719d7..6b026c6ef106526d9501e8731494d637eb84befa 100644 --- "a/data/3.web\351\253\230\351\230\266/config.json" +++ "b/data/3.web\351\253\230\351\230\266/config.json" @@ -1,4 +1,6 @@ { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [] + "node_id": "web-b6d31a7b7e7d44b8ba8318e7d8f1b6c8", + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git a/data/config.json b/data/config.json index f8319039001c4de779d07eee6cc15c028019b9cc..27afbccd470f730e7eeae138a57ff6fa24fee0eb 100644 --- a/data/config.json +++ b/data/config.json @@ -1,5 +1,7 @@ { "tree_name": "web", "keywords": [], - "node_id": "569d5e11c4fc5de7844053d9a733c5e8" + "node_id": "web-0f5b20b1341b41b78d4342654f6283a1", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git a/data/tree.json b/data/tree.json index 3f83a771620907636382ef52101b58922698ab1e..803c085d60bd1dfc14dfe98f08203e3ba65eb5da 100644 --- a/data/tree.json +++ b/data/tree.json @@ -1,21 +1,21 @@ { "web": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-0f5b20b1341b41b78d4342654f6283a1", "keywords": [], "children": [ { "web初阶": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-d40e28fa9cd746f3803a9ea76f093fe3", "keywords": [], "children": [ { "前端基础": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-c4ea38687111444f9a10cadd5a1cd70c", "keywords": [], "children": [ { "客户端": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-d33df0e104da499ca1c3a25f24466544", "keywords": [], "children": [ { @@ -25,22 +25,34 @@ { "Chrome": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ac6b6e2886ea484ca9fd3945e21d279f" } }, { "Safari": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6a34066088124a6c864c0ce61428758e" } }, { "Firefox": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b9139f8077c849258beaeb158ca54098" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-896727b514f64d33b519917492c64541" } }, { @@ -50,56 +62,81 @@ { "小程序": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2ea24cfdeef64061ba556a264f151331" } }, { "WebView": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-af19f497310b4ba4b5110a6dc07f1960" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-54ddb35d9c724041bd512b4c2ddb2585" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "网络": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-2c0c4d8e710e4ace805bb7dbe676dda6", "keywords": [], "children": [ { "Domain": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-74d9f685c720489da94d95be5e9a624e" } }, { "TCP/IP": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d8afdf4f502a4e968125c727b8c1dd24" } }, { "DNS": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0e865026a58b4f7593670e3a11338e4d" } }, { "HTTP": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6117d9a5edc2492492c7a71437afd85e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "服务端": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-25c610dccf844cf0b49d9975ac8d4b8f", "keywords": [], "children": [ { @@ -109,22 +146,34 @@ { "Nginx": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-227350c6228840e69322747462f22b43" } }, { "Apache HTTP Server": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-96387ad55afb4767be0db5d8f630f019" } }, { "CDN": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aaaae5618ea9496d80d7feae8ff60634" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2323005e550d4c4192c1b16efc935522" } }, { @@ -134,42 +183,62 @@ { "PHP": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b875257e4593475a8715ed8ad15b8c73" } }, { "Java": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bbd2d09339704b7d8d4bc0c4e8933f23" } }, { "Golang": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-95e0b95856e0477292c6d4c0680e7bde" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2da0ef2c998d4cc899f12a3072054c8d" } }, { "数据库": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-166221d18cc24074833679af8b66188f" } }, { "操作系统": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e7183371e7b74336a6f88ed91ed0bb49" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "行业标准": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-5b0389d59a46415192d47f562f1d4efa", "keywords": [], "children": [ { @@ -179,96 +248,137 @@ { "CSS标准": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9bd8b2393fab4521a4db327f7ed16ea2" } }, { "HTML、XHTML、XML、HTML5标准": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c55a7a3aa6e64e5184c065d571c064d1" } }, { "DOM标准": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-941af4940c7740238d46ab3a923aa227" } }, { "SVG标准": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8d4eb1564bfe477592550fdc255e94b7" } }, { "小程序标准": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-021e66da25e34937a0dc3b31de741733" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1328712051f14901b32a8275157c72ec" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "ECMA-TC39": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-fed98fe2ab2841a3a2d136d417d1bd90", "keywords": [], "children": [ { "EcmaScript标准": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ae209ee870564348b547b9f539023626" } }, { "JavaScript标准": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4b73c6114bdf40eda5571448442e2e9b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "研发工具": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-8dc4e918e1854de1a7950a50a5facaec", "keywords": [], "children": [ { "编辑器": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-2e16fff4f6cc4dedaeb82667f687133c", "keywords": [], "children": [ { "Sublime Text": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2ea2d050b2d345628f1c315da47f3cec" } }, { "Visual Studio Code": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3280a5109bfc464d85ce64e23b6c4708" } }, { "WebStorm": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fc2a105a75c44b8686716bbe99d6b052" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "调试预览": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-b937582d01384609ab3c687e34c7b319", "keywords": [], "children": [ { @@ -278,16 +388,25 @@ { "FireBug": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a4cc85b0323f41259666ad6896180cd3" } }, { "Chrome DevTools": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b41bdbbc02014727a04e83a9fdce1cd9" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ebed39ef6af54fc6bfc65ad8c82c92b0" } }, { @@ -297,16 +416,25 @@ { "file://": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1a0fee1029684b38947502d396b845aa" } }, { "http://、SimpleHTTPServer": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1e729b7629dd49cfab3e3c10b9809c9b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b957b752fdc24d36b66812a5ce8d020a" } }, { @@ -316,16 +444,25 @@ { "CodePen": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6da2012e6c244a76ab4fcb828e1aab9c" } }, { "JSFiddle": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b4e7c11019bb4519a9552267c1f14941" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-154ed295cebc47a69c389472064ab27b" } }, { @@ -335,72 +472,101 @@ { "hosts、Switchhosts": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e8af073cf6a2438da2b4cab3883c1c15" } }, { "Debugging Proxy、Charles、wireshark": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-33c665e4795440ae83a6c4320b923e87" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5d531c9da9374f14bf7b9948877cc938" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "图片编辑器": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-cb2ade4764c14b2eba0b43d145b9476c", "keywords": [], "children": [ { "Photoshop": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8d005c8b4611403b85f37e1d8f8d3419" } }, { "Sketch": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-648fef8bab844d7abc7c8f0362aadf45" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "版本管理": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-be1acf8840ad45748364fbc4c4bdd3ff", "keywords": [], "children": [ { "Git": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-288d926d6f9a40b3b8bf43f5d1fe8e5b" } }, { "SVN": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a56d853f30f645e296401c0b3c442ce2" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "HTML": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-104d34637c9c4da4981789eaf9dd79b9", "keywords": [], "children": [ { "元素": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-605543f935f94521a77b9473a7a60f2b", "keywords": [], "children": [ { @@ -410,16 +576,25 @@ { "主根元素 html": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-02a23289f73d4573a04604260c793149" } }, { "分区根元素 body": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b6c6fa03618c4637810cf8e384a96901" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a9bee46e6399462e8073bd9c8593add2" } }, { @@ -429,10 +604,16 @@ { "base、head": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-45077336399f4e3b94df0056b11433b7" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-32e40a0d46844d139fdcc8fa6b59850b" } }, { @@ -442,10 +623,16 @@ { "header、footer": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c5d07ca2c335413a824995102be77f15" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9a47ca065718416bb2734d7cdcd4ea49" } }, { @@ -455,16 +642,25 @@ { "块级内容 div、dir": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-99dfcca17e8a4ca9bae2d1732ad7df9b" } }, { "文字内容 a、b、strong": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7c8637ac836a4078b1f5c0323102dbf9" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-29e6718cf7d44ce8b701527a78824135" } }, { @@ -474,10 +670,16 @@ { "audio、img": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-453ce931a41c4f688b0096bc27914c5b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b3535851a3e44b5ab1a7b78ea0a5fd8b" } }, { @@ -487,10 +689,16 @@ { "iframe、object": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f23d8c0519db4d7ba271545c850b275f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d140fe53b32f4951919b8bf1b8322b02" } }, { @@ -500,10 +708,16 @@ { "canvas、script": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2bbab4ffb0494939bc51b798b33898ac" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-70056ae9fd3442a9b55df12d024c3a8d" } }, { @@ -513,10 +727,16 @@ { "table、tbody": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d70bc058b72d44228f0c038f124b19ab" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-04d0d970bad24356b053491ffef2610a" } }, { @@ -526,10 +746,16 @@ { "button、input": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7b9609fba36a4654b369a2d63f047bbb" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5877ef2034d74487bb7bd37fd9ad0fde" } }, { @@ -539,18 +765,26 @@ { "menu、menuitem": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-053b7b38e156478aa7656b6f921c7a48" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4422174330ea44e8b8c3c821dd05f557" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "属性": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-26d8588be9a4466da153300d401095ed", "keywords": [], "children": [ { @@ -560,336 +794,485 @@ { "class、id、style、title": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9f0a223bdcc9492db96c178022769908" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-823aa98c231342459dc4fc79298e5d5e" } }, { "全局属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-831469f1921a433181763ea7b0da175f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "事件": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-6e55b12487364870b0146b68caa37e69", "keywords": [], "children": [ { "窗口事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1bafd15fae054dc7852fabd809a4c4c8" } }, { "表单事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0a0227ddccf749e79d564bbbf3cc1297" } }, { "键盘事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fb095a2c311641dc9d243ddb2f29ed0b" } }, { "鼠标事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-545c8183477f4d4c90e6dcbfaed47836" } }, { "多媒体事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b1174be228f848a8a2e6ef7c089950ef" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "编码": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-5819b09d55a94485bbe2b9d75455526c", "keywords": [], "children": [ { "URL编码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-18b35231c41c46b18b5114a095031b52" } }, { "语言代码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1e97650f94594d7cae82a999beb9b874" } }, { "字符集": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f24483704bc54c2398cef06747093eb1" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "CSS": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-e7ea2438dd824de7bb9fb38e4d05aafc", "keywords": [], "children": [ { "语法": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-95eb91fca2994c3eb7cf173a89c41e33", "keywords": [], "children": [ { "@规则": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d94ee5b8848340b09456a66ccf0d6359" } }, { "层叠": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a4b5e6a426a648698b655bc648df96b1" } }, { "注释": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-365f442171df479ebe36d19d6cc4b5a6" } }, { "解释器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-44abebe9fac34d229697039a7ea3814c" } }, { "继承": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9ac52e8b2d46432c864e75f99a1fb510" } }, { "简写": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ffa7b9a09ec14ad7ab7085158325dce2" } }, { "优先级": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fe21c204e8e346bb972d5dbc11d457f0" } }, { "值定义": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b26f68f1363942f4a794e2a9f991d870" } }, { "单位与取值类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-17393a01505349ecb7e814aa6a48e5b2" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "选择器": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-81d852f329bb4d6faac8c9256ebc88c9", "keywords": [], "children": [ { "元素选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-31cd0e292bc244a494bf5b7e8b93c0ee" } }, { "选择器分组": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a18b27e1bb4e4e05a85d66e767d2ac4d" } }, { "类选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ca98f1bce13d42a4a5aea7b9d860bfcb" } }, { "ID 选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1e55e32590434c7eab84fbf0626cbe26" } }, { "属性选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a4b7f9e76a26435795f26584905b3191" } }, { "后代选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-79391c06b79e47599c7c77ad68943f12" } }, { "子元素选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-679c04c607ab40c88a3e6346bab43922" } }, { "相邻选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9c8f1871b92d4c88806fe7716b47ff2b" } }, { "伪类": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2d34728cbe14439fb147f3c9767aa2df" } }, { "伪元素": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1c67e37c74fa425dba66b5fd9ad3f26d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "定位": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-8a18307693fa46928b46bab68cbadda6", "keywords": [], "children": [ { "position": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7cb394af70104c5f96686dc155c7702c" } }, { "top、left、bottom、right": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8f9ad9a9c1f940109dfad9f63aa80bc4" } }, { "z-index": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6f7186bba59846aa81cac7617f4be3bf" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "布局": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-3fa267c15a6d4a258c4a5b1fb11543e3", "keywords": [], "children": [ { "Box Model": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-27bef2a77dad485c918ba94af1d29bd1" } }, { "FlexBox": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d5e53ec1b94a4545a6f8495036cc1d0a" } }, { "Grid": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7461a3e6cbc543fbbbbaa2305552e5be" } }, { "Column": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fbb16f0cb8d846668489172d3b4e1335" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "样式": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-78e6ba18e1b84356ac7c7cb0c575488a", "keywords": [], "children": [ { "背景": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8e0296c5140e4c89b0ec7b6aed24a549" } }, { "文本": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9f18e1c2ce1a4f2789aabf81d3e3913c" } }, { "轮廓": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d25f76ca7e034bc9a7af40377e1b9d62" } }, { "列表": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e7eb7d9c19a845749cdaf22a2521abf5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "动画": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-0ad537daa4cd4b68b8ed0aa512cb9b3d", "keywords": [], "children": [ { "Animation": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7f7d8439db1344c490c058470f969008" } }, { "transition": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7b8b324583bc4db696a3b025b4b1e181" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "应用": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-7fe38197073f4a57be161b211a565d77", "keywords": [], "children": [ { @@ -899,10 +1282,16 @@ { "em、vh/vw、%": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-889ed69d50344d5496ab1c35a35625ac" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-74eff79677ea46e894f0005fa44dedd8" } }, { @@ -912,32 +1301,45 @@ { "@media、rem": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-871d86421fe94eddab43b1222dacae68" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e3ea67dd59a945a3b72ce133ad48e41e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "JavaScript": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-168bf9aa629344f39271baec252f85f3", "keywords": [], "children": [ { "语法": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-881133e8eba243159dc99b6cbe9dcec6", "keywords": [], "children": [ { "值、变量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0202e04c428d4cef85a09bf7cd73dfdd" } }, { @@ -947,28 +1349,43 @@ { "基本类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2c4c5263fb8a41698efff1a9128554c2" } }, { "类型判断": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ad138b2b15644320b0c6dbf669951eb7" } }, { "类型转换": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2315ce8faf1c4e8fbb488ee6b05f6def" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-556fed6dcc804a08bab00d3f76981943" } }, { "流程控制": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-10947398043346afb538b3d3ae20ec15" } }, { @@ -978,22 +1395,34 @@ { "数学": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8b7ff9f6a7cf4e6b9229abfeef6156bd" } }, { "比较": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-534532433a2c4c3a9c5c9568fb8b78d2" } }, { "逻辑": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cc2fb053da1d4d05a96aa87b35f56f78" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0a7a69294dfb46558ffb459b326d5b10" } }, { @@ -1003,358 +1432,526 @@ { "函数声明": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c348e870fadc4db5b4eea18be1af2f48" } }, { "函数表达式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e2cc70ff337444a9912d5e823646f70e" } }, { "回调函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4d57d49f758e42d38b83584cbdfc2ce8" } }, { "箭头函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-56147c0096c84203aa838ca69788f79a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a80c9a4082814dba8c1d1078d584e516" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "数据类型深入": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-5f6dd780403b4302aa421aff72ee7427", "keywords": [], "children": [ { "原始类型的方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-befe2c81ea174760b276faced4569800" } }, { "数字类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f4168a7484dc4d5992e0f5fa03534853" } }, { "字符串": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d3fffd7b60b9471ab418d02010ebd9d8" } }, { "数组": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-02e1bc98ce284e50827ec706a8a74440" } }, { "数组方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bb33bbcc229e4468aa4d8b2c17d2fe58" } }, { "Iterable object(可迭代对象)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f35c281bc6324bf29e120f43dbad87ad" } }, { "Map and Set(映射和集合)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f7491d169c8a4747a887c523beb4bd8f" } }, { "WeakMap and WeakSet(弱映射和弱集合)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e3dbc8f7c8c34473b5397554474dcdf9" } }, { "Object.keys、values、entries": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f911531f04984e839e0077b29bc4c339" } }, { "解构赋值": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3dc5832016c04290af90dd19c15f8148" } }, { "日期和时间": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2ba36df6323b4b8dbc40597c93cbebc2" } }, { "JSON序列化、反序列化": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-262ca990690c48009445fe4808f1e735" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "对象": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-2470f0a345b043d2a9fc079c2081e72a", "keywords": [], "children": [ { "属性/字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-00bed1f246e8402aaab21cc693b107de" } }, { "in 、for…in": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b3a4cc26c4994a9d912199d3346b063c" } }, { "对象引用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-253e5af99aa04353b246f37c07e24b15" } }, { "深拷贝、浅拷贝": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-574358c4498549b5badc80928afa74c2" } }, { "Symbol": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-46ce52a225cb40b8bbac3f2fb5610721" } }, { "垃圾收集机制": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6a086d2a723c4dbda2b60e1fff6145dc" } }, { "this": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6030c021416142b0962976663dad7e27" } }, { "new": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2893141c0baa47349a701775417b10f5" } }, { "Optional chaining ‘?.’": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-646ae5bcecee470fb32756400b2b6749" } }, { "类型转换Symbol.toPrimitive": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-eb5510589efd4accad27359e6329bf97" } }, { "Property flags、descriptors": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-29d23ac0b08248c4a80ec67aab7dbf3f" } }, { "getters、setters": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7aec2ecdd27240d69adf7f190128d150" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "函数": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-e5acfee13eff488d9a4bb673b0587c84", "keywords": [], "children": [ { "调用栈": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0f4fef37a26c473886f4227f7673f7f2" } }, { "递归、尾递归": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c7caa09e39f44b949a9def809aff4a3c" } }, { "arguments、params spread": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-186f3e39b52f4ad8b949083906a321ed" } }, { "作用域、闭包": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f47b5ec749b1447e8b2f0343fdab2f42" } }, { "var、变量提升": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c92819ffe89a4553b982cc477c00f994" } }, { "IIFE、匿名自执行函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9f936a9318054861a61a3874e41868e2" } }, { "NFE、函数命名表达式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b921b9943b4d4371a95960a6ebdc2602" } }, { "箭头函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6e0aa003d84b4a6a83b4bd09bd9e230e" } }, { "new Function": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-133f959a96c44dc1bd9006e6a0b1cddb" } }, { "setTimeout、setInterval": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4dccc9c994f148248628bc8176783714" } }, { "call、apply、bind": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-87b7e2a60aab4d65856fd79a2cc34006" } }, { "部分施用、柯里化": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8430d2fde5794dcba610916dbf4cbf7f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "原型": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-658522b62ffc483296f8a918fe8bdbcf", "keywords": [], "children": [ { "原型链、继承": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fa343ddf9b1540a097dbd6d3a1247405" } }, { "F.prototype": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-60af6134c3e84fdeab6b64983f6d93c5" } }, { "Object.prototype": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-882aad54c9ae4d69bbfe0feb9f009d06" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "类": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-2a840f2837fa4e948891d7ed0f40bae0", "keywords": [], "children": [ { "extend 继承": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ced493530703469db0bae18172121189" } }, { "方法重载": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-02005a64e92b4d6f9e01a51dd1b9b4e1" } }, { "构造函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3a0c6873421b4dc49d7841c38e2a1374" } }, { "Super、[[HomeObject]]": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-77703bf2eaa842889f2d41cda2460682" } }, { "静态属性、静态函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b1399cc4726f45ce9ea8c20bad589638" } }, { "私有属性、私有函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6b9370303a4d4eaeb8b35df3b95489e0" } }, { "混合、Mixins": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d6fb960c61fe414f8a12cf7ec274f99f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "异步流程控制": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-32bcf2cde2c145b28e7f08df0f3e1ade", "keywords": [], "children": [ { "Callback": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b6fcb4edf78c4610a6ad33f8ff926a43" } }, { @@ -1364,132 +1961,191 @@ { "Promises/A+、Promisification、Thenable": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ec9b7624eed84338b7b2b70c3d2fb409" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1ffe39587f2745e083e5b2228d9e64d2" } }, { "async/await": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-06bafb5d63e94e34b53b25be055dede4" } }, { "generator": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2bb6172cf90b4af29429869fb0f563c5" } }, { "iterable": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7fda68294e4549e58db850a0fb0f37b7" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "模块化": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-97feeeb1d9d04c98b235b1cc2b94420d", "keywords": [], "children": [ { "commonJS": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-21fc912ddcb6432099c5e23ddeb4a397" } }, { "amd、cmd、umd、es-module": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-260db7714e204e169efca7655e773f04" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "异常捕获": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-d0bfe4c6c7094ac7989e84b13233753e", "keywords": [], "children": [ { "try…catch…finally": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cab23e0f567d42c4811a596bc8da9339" } }, { "throw": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-feb04ef8a7d44fd28d8daa2abd9416c8" } }, { "Error": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-429dd1b327644cc2a739d14ab8d1fe35" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "浏览器": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-6f6f3f3099bf4afabdf9c820c9848c95", "keywords": [], "children": [ { "DOM": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-ebf20bee4c1949639caededff7fd4a15", "keywords": [], "children": [ { "DOM Tree": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bebd9127fd29459dabab62dccebf40d3" } }, { "DOM Node": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-540fbe2c5a5e467b9b986ad4b0de237f" } }, { "DOM Query": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-573bb0dddcae459aa4c007509a6d7a7a" } }, { "DOM Properties": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6a9ae310bfe34d12af07ba80c63703f9" } }, { "DOM Modify": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-568e9acde03042aa9b1731331e30ae34" } }, { "Styles": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-af0c26dd4b754259803ad5edfe42ff5b" } }, { "Coordinates、Element Scrolling": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-270fee7e070b483eb0dfaf6154494dd3" } }, { @@ -1499,48 +2155,71 @@ { "UI Event": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-08fad97aaed4432dabe0f7b86145117e" } }, { "Bubbling and Capturing": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-04ddc8d504a94e099355029e105585f5" } }, { "Event Delegate": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-65754eb7a6834643a2e7ac383eedc706" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c66b1612c9c9448d97b66a5798163152" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "浏览器API": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-cd4f974e71364071ad20ceacef15ba94", "keywords": [], "children": [ { "location": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3ca5f570dc424251aad1a2771c512234" } }, { "history": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b8f3aecfdef14002811a7b793816eeb1" } }, { "navigator": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-492ee677ad3b41e79de32c4c683d8f4b" } }, { @@ -1550,10 +2229,16 @@ { "event.preventDefault()": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f7dbb1068d87401e8a0e5001a72502f4" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-32856f1d14ea4934a06371696cb27f15" } }, { @@ -1563,2183 +2248,3192 @@ { "change、focus、blur、submit": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aee69141fda4462b97bd842aab083521" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3e8071bbd63b4e8c830b19d956e0b1b2" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "网络": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-c9a5b62014094bd2a4f25697cc2d8ff5", "keywords": [], "children": [ { "XHR": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5cc39ec3e2b74a6b9a8901e63e946641" } }, { "Fetch": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f8ed3de981ed4e6da41e77919436367f" } }, { "JSONP": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9d5765294a5a4c85bc902ba1ba6afe59" } }, { "WebSocket": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-043643e570bc469099dc2f2ebf831681" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "权限": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-a4c26ae2c379482c980f40d7067037ae", "keywords": [], "children": [ { "Cookie": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-732158843e214aa9aa5d6c2170e6ec7e" } }, { "Session": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cb35dbcd22a9444dae331ea2213a0401" } }, { "OAuth": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8d95832b40184075b44375b7e8dda9f3" } }, { "SSO": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-abb6a21dc1b24e7a8c045c863c7ce7d6" } }, { "JWT": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-529073325d9940189d728b8168244048" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "安全与隐私": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-f793d56be01544fe8f05db0ed4b4140b", "keywords": [], "children": [ { "Content Security Policy (CSP)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c0cfac17dacb455eb775b3073a66f5d2" } }, { "CORS": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9dbdf7a35fc74a988cf4805af80ceb2b" } }, { "XSS": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-396267733d384596a8adfc544ed3ba7e" } }, { "CSRF": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-93289941d8cf4cfba428855458e6fccb" } }, { "MITM": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2ab159f93cc3429a8707200fb1423b5e" } }, { "Samesite": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cdf63756feca4def84ba3ce38c410472" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "兼容性": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-95f0f91e052b46a4a3ceecd52f65d856", "keywords": [], "children": [ { "Can I Use": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-065122ab5d9a4e3eb4f44a97d983ce3d" } }, { "polyfill": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-71263e446e8240f1967359cc13b8fa64" } }, { "shim": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d323a55fbc6f4f3c9a120796a4844067" } }, { "browserslist": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f03ee9a8c984472da42275df53794348" } }, { "Autoprefixer": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2784996c75c746709ed844d1618f66f5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "开发者工具": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-1602a58886724644a9a18437e1d90578", "keywords": [], "children": [ { "设备模式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-02926ed5a30b46a2baf5cc1eac559156" } }, { "元素面板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d283cdcd81a344d1ae7991a4748ef3b6" } }, { "控制台面板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f5a00ecd1ea64d0f92f51d0abaecc03c" } }, { "源代码面板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-66dbeb82365c4c31b0780f368996626f" } }, { "网络面板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b8895f4ac5ed43c3b0bf61bdcf745b48" } }, { "性能面板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-da572aad95e94e1bb1658986280181d6" } }, { "内存面板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-23bdcd1122c34a46af307174a89b8072" } }, { "应用面板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b3df382afccf4ccf8a5c63901fbb2cfc" } }, { "安全面板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9f9000cb3372402487e2b1d769124f6f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "jquery": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-369123a34fb44f03b2df6f80fb27fd6b", "keywords": [], "children": [ { "jQuery基础": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-7e6c888061a54e5a80732ef871bcb1ee", "keywords": [], "children": [ { "认识jQuery": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-059916fa932243e7a9f1ab4b50a7401c" } }, { "使用jQuery": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-14329c821327474b91497ab9e7b3a84f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "jQueryUI基础": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "使用选择器": { + "node_id": "web-2a3699322d664ee4a254bbedcb2c6213", "keywords": [], "children": [ { - "使用jQueryUI库": { + "jQuery选择器基础": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-65b5d12518e74c00857ab3fd4b5a516d" + } + }, + { + "基本选择器": { "keywords": [], "children": [ { - "认识jQueryUI": { - "keywords": [], - "children": [] - } - }, - { - "jQueryUI库结构": { + "ID选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8a3f8b5aacd64e2996d19edff12ebbd3" } }, { - "组件分类": { + "类型选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8cd3756b94a2449ab437cad3624e8273" } }, { - "浏览器支持": { + "类选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-df0b23ce896a46a199bb8c9fa48f9b4c" } }, { - "使用主题定制器": { + "通配选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e74227b096024e94a47e453afceb6af8" } }, { - "使用jQueryUI组件": { + "分组选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-967ffea38a0542f2b70ef10824c9cc54" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-03d3a684f5ec4223870fac43cfea992b" } }, { - "案例实战:使用第三方插件": { - "keywords": [], - "children": [] - } - } - ] - } - }, - { - "jQueryUI交互开发": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [], - "children": [ - { - "拖放": { + "结构选择器": { "keywords": [], "children": [ { - "拖动对象": { + "层级选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6090154301004b9bba7323cdf695f178" } }, { - "投放对象": { + "子元素选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d468c6359746490b9eece7e1238fd236" } } - ] - } - }, - { - "缩放": { - "keywords": [], - "children": [] - } - }, - { - "选择": { - "keywords": [], - "children": [] - } - }, - { - "排序": { - "keywords": [], - "children": [] - } - } - ] - } - }, - { - "jQueryUI小部件": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [], - "children": [ - { - "选项卡": { - "keywords": [], - "children": [] - } - }, - { - "手风琴": { - "keywords": [], - "children": [] - } - }, - { - "对话框": { - "keywords": [], - "children": [] - } - }, - { - "滑动条": { - "keywords": [], - "children": [] - } - }, - { - "日期选择器": { - "keywords": [], - "children": [] - } - } - ] - } - }, - { - "jQueryUI特效": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [], - "children": [ - { - "特效核心": { - "keywords": [], - "children": [] - } - }, - { - "高亮": { - "keywords": [], - "children": [] - } - }, - { - "弹跳": { - "keywords": [], - "children": [] - } - }, - { - "摇晃": { - "keywords": [], - "children": [] - } - }, - { - "转换": { - "keywords": [], - "children": [] - } - }, - { - "缩放": { - "keywords": [], - "children": [] - } - }, - { - "爆炸": { - "keywords": [], - "children": [] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0ff89fba41aa43eba1fdb1e435810409" } }, { - "抖动": { - "keywords": [], - "children": [] - } - }, - { - "落体": { + "过滤选择器": { "keywords": [], - "children": [] + "children": [ + { + "定位过滤器": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1492e00b6cd440bca532b5d9d4760470" + } + }, + { + "内容过滤器": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d8f680be46854088b80870e2b1f2ca9d" + } + }, + { + "可见过滤器": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b33aa74a3ece4e5d8b6e9e8e17223f94" + } + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5cd4a8a5e1504a89b617f1afee7dc790" } }, { - "滑动": { + "属性选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9ca5e1100ac84a6fb1fea076a563585d" } }, { - "剪辑": { + "表单选择器": { "keywords": [], - "children": [] + "children": [ + { + "基本选择器": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cee67c56aa8d4b02a7509b897bae64d1" + } + }, + { + "高级表单选择器": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-49380db978214aadbfba195dcc3698a4" + } + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4fa58d0b897f48e4b5833a9a932e0294" } }, { - "百叶窗": { + "jQuery选择器优化": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a6e5694220844fe3922386ed3b2cc2bc" } }, { - "折叠": { + "使用原生选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8b15a19573724f74a08067246e3e737f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "浏览器和导航开发": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "使用过滤器": { + "node_id": "web-27d2b5c5800a400aaed00ad65fbe5682", "keywords": [], "children": [ { - "浏览器开发": { + "过滤": { "keywords": [], "children": [ { - "浏览器智能检测": { + "类过滤": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bc867c37fa3e4fc387d9e3f96b999b30" } }, { - "强制渲染": { + "下标过滤": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2e1ce2957d4b4ba888d5162cb4a9c784" } }, { - "浏览器插件检测": { + "表达式过滤": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-418687b2caa045c1ae52019263dde478" } - } - ] - } - }, - { - "菜单开发": { - "keywords": [], - "children": [ + }, { - "使用jMenu菜单": { + "判断": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-59a8a5c6c9dc4955a7a414e37864917b" } }, { - "uiSelect下拉菜单": { + "映射": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5022bf589c034676acf581b7dcd14612" } }, { - "Apycom弹出菜单": { + "清除": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e7423fbe8a7244b983399cd5390cbc6a" } }, { - "Smartango内容菜单": { + "截取": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-04699f231705432596863761c2f87462" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-70140b0a101e4ce6ab583542cc07c3c7" } }, { - "导航开发": { + "查找": { "keywords": [], "children": [ { - "jqDock码头导航": { + "向下查找.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-494c2f4c785e4f11839f6620e4e79f18" } }, { - "AnythingSlider预览导航": { + "向上查找.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b6cb7aafa50b47a39a00ab65fa4eba66" } - } - ] - } - } - ] - } - }, - { - "表格开发": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [], - "children": [ - { - "表格排序": { - "keywords": [], - "children": [ + }, { - "设计适合排序的表格结构": { + "向前查找.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4079457898214a5cb28b8d7110456dbc" } }, { - "实现基本排序功能": { + "向后查找.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-61dcc36ea2a6420a93664d4f16bf5eb4" } }, { - "优化排序性能": { + "查找同辈元素": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ed6f6f7a96fb4fddb2eaa4c9d690fa6f" } }, { - "优化类型排序": { + "添加查找.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cfb08ca707a1404987becb63232e6eb8" } - }, + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c94262a367524194a5cdf55d7c28f63b" + } + }, + { + "串联": { + "keywords": [], + "children": [ { - "完善视觉交互效果": { + "合并jQuery对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a82545b0532a4dff87eaa00188d7b392" } }, { - "使用tablesorter插件": { + "返回jQuery对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8b583a23aace444aaf8e7a06d697e981" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a0e77a2cd48249b58e952eef71c74155" } - }, + } + ], + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "操作DOM": { + "node_id": "web-55968f2f91e54a61af7e9e255a63c197", + "keywords": [], + "children": [ { - "表格分页": { + "创建节点": { "keywords": [], "children": [ { - "使用服务器分页": { + "创建元素.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2e9f6cbe1a1e46c78f2aa1365db144db" } }, { - "使用JavaScript实现分页": { + "创建文本.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-95aa1f1a63144154a229b0755eb1a36f" } }, { - "使用Pagination插件分页": { + "创建属性.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5a8557e209e24f83849c46b7aa988b56" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aa27127cc54c41df8a42bd85460977f9" } }, { - "表格过滤": { + "插入节点": { "keywords": [], "children": [ { - "快速过滤": { + "内部插入.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6b97a5e810844bebb9aaee771174d2b2" } }, { - "多关键字匹配": { + "外部插入.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-892bfe8ddeef4cf095e38323f908beae" } - }, + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2441e264ebac45e1b0f99eb1ddc09593" + } + }, + { + "删除节点": { + "keywords": [], + "children": [ { - "列过滤": { + "移出": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-616a7ab65c4641a6871b283365a26e9e" } }, { - "自定义表格过滤插件": { + "清空": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8924353c48bf4a2b9d3de84f887193a2" } }, { - "使用uiTableFilter插件": { + "分离": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4bfba852d2ae47cd88aa4402febe2ca1" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-973940851fd645b6a683c46d5ab1dbe4" } }, { - "表格编辑": { + "复制节点": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-09e6613f64a845288bc2873aa790e8c3" + } + }, + { + "替换节点": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7d97f6b7d1ad4e21896b581c98d86761" + } + }, + { + "包裹元素": { "keywords": [], "children": [ { - "实现表格编辑功能": { - "keywords": [], - "children": [] - } - }, - { - "自定义表格编辑插件": { + "外包": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-67c703b4496541b883ddd65fee36e7a8" } }, { - "使用tableRowCheckboxToggle": { + "内包": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-02a4157b0ce6437da32b687c91d5ceba" } }, { - "使用TableDnD插件": { + "总包": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cc0126622cf84beb9cc1e526d68f3c08" } }, { - "使用uiTableEdit插件": { + "卸包": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-df9affd8793d45668f16ce312192602e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-34942d8618314a5cac060b1c70590e14" } - } - ] - } - }, - { - "表单开发": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [], - "children": [ + }, { - "设计表单": { + "操作属性": { "keywords": [], "children": [ { - "设计表单结构": { + "设置属性.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-74da702b24514918845729178f64fba7" } }, { - "设计分组标题": { + "访问属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-16c61f0597eb416aa2cc1d9db8ae37be" } }, { - "设计提示信息": { + "删除属性": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-eddcc2b4a3cf464ba4ec81371e01db24" + } + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fae7d3388b2b4060aebd6dc372a4ed49" + } + }, + { + "操作类": { + "keywords": [], + "children": [ + { + "添加类样式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-61698742ffdb4b828fad1a5546fd9d42" } }, { - "设计条件字段": { + "删除类样式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-82ccd1b49e244c6c9c9105bd573a4ab2" } }, { - "使用checkbox插件": { + "切换类样式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-40a2b68900bd4faa93387d4e7cc9b6b0" } }, { - "使用jqTransform插件": { + "判断类样式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2ba56f5f5ef543ab9a126e6613b014fa" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-77488f201e9c4701aaea8ab5450fc2b9" } }, { - "表单验证": { + "操作内容": { "keywords": [], "children": [ { - "表单验证基础": { + "读写HTML字符串": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-720a068d21244d398a7a5ea66c82840c" } }, { - "使用jQueryValidation插件": { + "读写文本": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6e8fb042c22d49868056038c4b8591b8" } }, { - "使用validationEngine插件": { + "读写值": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bc682cc350f94a3ebda6c4aaca280298" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-339072a92c094ae694902814218dc58b" } }, { - "增强表单": { + "操作样式表": { "keywords": [], "children": [ { - "使用Elastic插件": { - "keywords": [], - "children": [] - } - }, - { - "使用Autotab插件": { - "keywords": [], - "children": [] - } - }, - { - "使用maskedInput插件": { + "读写CSS样式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a38e31a69f10451f9e2ac3c2a9ac065f" } }, { - "使用passwordStrength插件": { + "绝对定位": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d01cd9d82970478eaf7eef37c0237231" } }, { - "使用formToWizard插件": { + "相对定位": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b036eb9d0897473bb13cb61e25c7b362" } }, { - "使用datePicker插件": { + "控制大小": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-92b4412247564dcfba3af047236c08c7" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3f5ab9554b34499c85a5764c0466bb26" + } + }, + { + "遍历文档": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cc30db66ad5a4e04a32af2d5047f428d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "jQueryMobile基础": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "事件处理": { + "node_id": "web-92bd8b8783224445a86e91b1a4512065", "keywords": [], "children": [ { - "移动开发概述": { + "jQuery事件基础": { "keywords": [], "children": [ { - "移动设备统计分析": { + "绑定事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5f34c6d5f81145d4b3b41ed77f8b8baf" } }, { - "手机浏览器兼容性测试结果概要": { + "事件方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d6dbc3c1e3714261aeeaa941db719f7e" } }, { - "开发中可能遇到的问题": { + "绑定一次性事件": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e916a54cb93a42c095af7736c2268b49" + } + }, + { + "注销事件": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5ae1fa1adf2b4432ade6b2115e422272" + } + }, + { + "使用事件对象": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4a1bc8243d234ae8af6a06385a8043eb" + } + }, + { + "触发事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dec2bd34b1bf472f8ba0d202130158af" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9c1a2812cb7143ba93e4d7a24b945c0c" } }, { - "jQueryMobile概述": { + "案例实战": { "keywords": [], "children": [ { - "为什么要选择jQueryMobile": { + "切换事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-590f31b105d44de1a2d77bf58f504c14" } }, { - "jQueryMobile移动平台的兼容性": { + "使用悬停事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-395a02d5b4614e758c87c3ad3e2ccb66" } }, { - "jQueryMobile的功能": { + "事件命名空间": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-500d836aeb29401bb86daf704d80121e" } }, { - "jQueryMobile的特性": { + "绑定多个事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3d3befdc8a614d13b3f337ba20d75282" } - } - ] - } - }, - { - "安装jQueryMobile": { - "keywords": [], - "children": [ + }, { - "下载插件文件": { + "自定义事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-06e83dd3224249e4a688823ca36f0491" } }, { - "初始化配置": { + "页面初始化": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7ce199f5528242a6b6e14745abf34904" + } + }, + { + "使用ready事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1b8826a622a047ab8e31ffa3882a97ff" } } - ] - } - }, - { - "案例:设计第一个移动页面": { - "keywords": [], - "children": [] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-db8eb4c239904daa996620abd03103f7" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "设计移动页面和对话框": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "使用Ajax": { + "node_id": "web-098cac69345642ceb77ded0e29c23560", "keywords": [], "children": [ { - "设计页面": { + "jQueryAjax基础": { "keywords": [], "children": [ { - "定义单页": { + "认识Ajax": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-40a36967eb6e4dc0a61de9e49c984434" } }, { - "定义多页": { + "安装虚拟服务器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1deb44d0d06e4d6abefcf971d966a110" } }, { - "定义外部页": { + "配置IIS组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3aca8cbd2f294ce69baca8a38590ae0f" } - } - ] - } - }, - { - "设计对话框": { - "keywords": [], - "children": [ + }, { - "定义对话框": { + "定义虚拟目录": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5a3e919f3060461590a37434789dd378" } }, { - "定义关闭对话框": { + "定义本地站点": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9a1c06d561d649f7aba6eec30be75d34" + } + }, + { + "定义动态站点": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-394a2ec9842543e58166d635d5f51ebc" + } + }, + { + "测试本地站点": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ce0bf096f7ed44bd924b39867d784de1" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3b68b94a2ee64c40ad07c07ec9905a02" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "使用选择器": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "设计动画": { + "node_id": "web-721e776129024dacb7b04d596727cd55", "keywords": [], "children": [ { - "jQuery选择器基础": { - "keywords": [], - "children": [] - } - }, - { - "基本选择器": { + "jQuery动画基础": { "keywords": [], "children": [ { - "ID选择器": { + "显隐效果.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f3500e71bc624fa181c64861fbdf08bc" } }, { - "类型选择器": { + "显隐切换.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-926c9fe607144b8892221ab4025137ae" } }, { - "类选择器": { + "滑动效果.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9562b3df69b449e6ba42ea4da786f32a" } }, { - "通配选择器": { + "滑动切换.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2f23de82374f413f9c7126536b3e7074" } }, { - "分组选择器": { + "淡入淡出.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3ff58c7e5e88408cb88902a28869d868" } - } - ] - } - }, - { - "结构选择器": { - "keywords": [], - "children": [ + }, { - "层级选择器": { + "控制淡入淡出度": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f94e3331098941d8a6890b71c70c7fb5" } }, { - "子元素选择器": { + "渐变切换.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-abe04447a0f243ef9a8b404dd8d3ef24" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d1029cab7d1a4ba7bcaeb450e728203d" } }, { - "过滤选择器": { + "设计复杂动画": { "keywords": [], "children": [ { - "定位过滤器": { + "模拟show()方法.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3adcbdc266e64a19a07b85d715576fd8" } }, { - "内容过滤器": { + "自定义动画": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ad9c68b56a614d1cade94115c80efe9e" } }, { - "可见过滤器": { + "滑动定位.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6bc8ec2fe00b4d5f959488390734b372" } - } - ] - } - }, - { - "属性选择器": { - "keywords": [], - "children": [] - } - }, - { - "表单选择器": { - "keywords": [], - "children": [ + }, { - "基本选择器": { + "停止动画.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-85042c64f1e84925905409c0d4317d49" } }, { - "高级表单选择器": { + "关闭动画.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dc9743611354472c9a406041c7e339e3" } - } - ] - } - }, - { - "jQuery选择器优化": { - "keywords": [], - "children": [] - } - }, - { - "使用原生选择器": { - "keywords": [], - "children": [] + }, + { + "设置动画频率": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3443c1bbdbb44dce91ae7a08c03c030d" + } + }, + { + "延迟动画.": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dced8c00b9b243cda62b22baf2e45a26" + } + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-66e58d3492ac4eb8b3d599ba8c05fcd3" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "使用过滤器": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "使用辅助工具": { + "node_id": "web-3d1508bf6f864bada9d208d865310e6e", "keywords": [], "children": [ { - "过滤": { + "检测浏览器": { "keywords": [], "children": [ { - "类过滤": { - "keywords": [], - "children": [] - } - }, - { - "下标过滤": { + "检测类型.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d9181520665f4f599764525529369ad5" } }, { - "表达式过滤": { + "检测版本号": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5e882d417f8e41fe9449cfd6cc7fa615" } }, { - "判断": { + "检测渲染方式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-22b8b6318aa545c38349bbea45126e43" } }, { - "映射": { + "综合测试.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f66d1aed7bff459e949834372ce9d89e" } - }, + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-36c742dd2f56403081138c4ce52c18fa" + } + }, + { + "管理jQuery库1": { + "keywords": [], + "children": [ { - "清除": { + "兼容其他库": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c32a85fabcc44d05a4da4127206f087d" } }, { - "截取": { + "混用多个库": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-607a061f091d44f2ac9e3c2ef6d592d8" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cb0431718ce8482fba7c1f5c5e91d767" } }, { - "查找": { + "扩展JavaScript方法": { "keywords": [], "children": [ { - "向下查找.": { + "修剪字符串": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-48955a6ff00945abbcb6d9972b7cadab" } }, { - "向上查找.": { + "序列化字符串": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-94bdfbb7cfe840858e22796c1659eebe" } }, { - "向前查找.": { + "检测数组": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0adb2cef6d1742009f4e88016f5e92ad" } }, { - "向后查找.": { + "遍历对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-52d4c668fdd042fdb5ba65fe94a78e33" } }, { - "查找同辈元素": { + "转换数组": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aa4cd0bf1dff480fab9e70308b485bed" } }, { - "添加查找.": { + "过滤数组": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6fc41c266cd6404eb0ee29f15de73348" } - } - ] - } - }, - { - "串联": { - "keywords": [], - "children": [ + }, { - "合并jQuery对象": { + "映射数组": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-efbe456701084db28eabacf454001c19" } }, { - "返回jQuery对象": { + "合并数组": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d61ed2363eb24a0f825d23d955dc012b" } - } - ] - } - } - ] - } - }, - { - "操作DOM": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [], - "children": [ - { - "创建节点": { - "keywords": [], - "children": [ + }, { - "创建元素.": { + "删除重复项": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-493853cf689840668913f5cc2d44633f" } }, { - "创建文本.": { + "遍历jQuery对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b16ff464ec994c7494be36c713f8567d" } }, { - "创建属性.": { + "获取jQuery对象长度": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d80c85b0222b435e9fcfcdb27f9d1e51" } - } - ] - } - }, - { - "插入节点": { - "keywords": [], - "children": [ + }, { - "内部插入.": { + "获取选择器和选择范围": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-17aa347351c84bbeb8e31cd3d7afbaac" } }, { - "外部插入.": { + "获取jQuery对象成员": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-182dec74be3a4b7f9361007ce26f9e76" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2a937d6d68bc43a68d449708bc6de8d8" } }, { - "删除节点": { + "使用缓存和队列": { "keywords": [], "children": [ { - "移出": { + "认识缓存": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-84ec665ab64347f38f4acdb54f5f86a6" } }, { - "清空": { + "定义缓存": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8665846aa4e04f06bb2da4c1dd23896e" } }, { - "分离": { + "获取缓存": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f87110a0316c43deba0b2407021a2feb" } - } - ] - } - }, - { - "复制节点": { - "keywords": [], - "children": [] - } - }, - { - "替换节点": { - "keywords": [], - "children": [] - } - }, - { - "包裹元素": { - "keywords": [], - "children": [ + }, { - "外包": { + "删除缓存": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5aa346f45ddd44bda8b66c78c0e4fd02" } }, { - "内包": { + "jQuery缓存规范": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0f80bcb2120641f5b42626b77c522c23" } }, { - "总包": { + "认识队列": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e63c454dfbd047f685693cbe353325e1" } }, { - "卸包": { + "添加队列": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b8bc351d10654e1e8b114b64f6e5c031" } - } - ] - } - }, - { - "操作属性": { - "keywords": [], - "children": [ + }, { - "设置属性.": { + "显示队列": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-071cafd6e7554de3ad7e1adcf1d77110" } }, { - "访问属性": { + "更新队列": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9a7b12c17d624be18e26f921525a6a8b" } }, { - "删除属性": { + "删除队列": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-de11865d12b14c29a1e354ab9d140d90" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ad4e3a38594b4f7484b6724be9586146" } }, { - "操作类": { + "使用延迟对象": { "keywords": [], "children": [ { - "添加类样式": { + "认识deferred对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-450bf510f8e64cff92289f01c83c3b3f" } }, { - "删除类样式": { + "Ajax链式写法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2e0dda40fa304740a434c3e1ba182758" } }, { - "切换类样式": { + "定义同一操作的多个回调函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1f63ae46da8d4204841542ab61122773" } }, { - "判断类样式": { + "为多个操作定义回调函数": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0b38bf59cc5e4d628e24454e6585ba5a" + } + }, + { + "普通操作的回调函数接口": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-69a09f778ffb4e1883600c0cba0e2420" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1d2641dd3a9e4a399ded2ca0c842a291" } }, { - "操作内容": { + "使用回调函数对象": { "keywords": [], "children": [ { - "读写HTML字符串": { + "添加回调函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4197181455c64665aaff6f38c518ce9d" } }, { - "读写文本": { + "删除回调函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-71f3a22e0af74734949764f15f59d66e" } }, { - "读写值": { + "判断回调函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0473364158cf40399d1db7582580b618" } - } - ] - } - }, - { - "操作样式表": { - "keywords": [], - "children": [ + }, { - "读写CSS样式": { + "清空回调函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-adda793d6e82430a96ed475f84837daa" } }, { - "绝对定位": { + "禁用回调函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-18b8bce72ac345589c1d50c52035ff8f" } }, { - "相对定位": { + "触发回调函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-942724265d29457489595b2ffe9b4d49" } }, { - "控制大小": { + "锁定回调函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-159e0018ea0f4bfa9f31e31742349849" } } - ] - } - }, - { - "遍历文档": { - "keywords": [], - "children": [] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-04c727ac9c1842dfb2e4bdf62e86cd6f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "事件处理": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "自定义插件": { + "node_id": "web-0809903ae4364b929609ff36afcc51fb", "keywords": [], "children": [ { - "jQuery事件基础": { + "jQuery插件开发基础": { "keywords": [], "children": [ { - "绑定事件": { + "jQuery插件开发规范": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cba2c668d2e042ba8842aa897d2ac52d" } }, { - "事件方法": { + "jQuery插件设计原理": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-943aace527b54115a419b267b66c8292" } }, { - "绑定一次性事件": { + "定义工具函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5dc35ac61e464945a07fab328cb97a60" } }, { - "注销事件": { + "定义jQuery方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7c6a96a7c5b14a63b45b2a2fed7e83f9" } }, { - "使用事件对象": { + "匹配元素对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-34946e1ce18243818cafa65a06b8b6ee" } }, { - "触发事件": { + "使用extend()": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-abfc125299944cdbb38de2a54684feaa" } - } - ] - } - }, - { - "案例实战": { - "keywords": [], - "children": [ + }, { - "切换事件": { + "定义jQuery选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-649433f7b16e4c71b21c74a39e77beac" } }, { - "使用悬停事件": { + "优化默认选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8039b0ed225943e4a01b9828f035f4dd" } }, { - "事件命名空间": { + "封装插件.": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3f2c58ea37a24ccdbc233218e591cf47" } }, { - "绑定多个事件": { + "开放参数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2d399a0257164275b286d303f2da7551" } }, { - "自定义事件": { + "开放功能": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-021df67f1b4b45f4a1bcffd83571aea4" } }, { - "页面初始化": { + "保留隐私": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-82d0d0c876a24cb9b7dbd3256e7f0999" } }, { - "使用ready事件": { + "非破坏性实现": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bd0d59ceac364c759688462b823a06ee" + } + }, + { + "添加事件日志": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-eb6bf45a1e604018917df9c373e4d21a" + } + }, + { + "简化式插件设计": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-32812a0e9ec84c37a9312dc0146d6897" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e3f36eedbd6d4ca29da0753e57b47c71" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "使用Ajax": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "jQueryUI基础": { + "node_id": "web-f0395606582e45deb336d9cf8f3135b4", "keywords": [], "children": [ { - "jQueryAjax基础": { + "使用jQueryUI库": { "keywords": [], "children": [ { - "认识Ajax": { + "认识jQueryUI": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6bb2718217fe438d81b46c8a672f0a83" } }, { - "安装虚拟服务器": { + "jQueryUI库结构": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4fe107a1249a4262acd7c2beb5234a7d" } }, { - "配置IIS组件": { + "组件分类": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e59c3b5dcd6c4f17bef63cecfd6f82fa" } }, { - "定义虚拟目录": { - "keywords": [], - "children": [] - } - }, - { - "定义本地站点": { + "浏览器支持": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-43a3badd71614c7ea3b9f4899d4a9e43" } }, { - "定义动态站点": { + "使用主题定制器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-625047b41a434cd4860ce5588726590b" } }, { - "测试本地站点": { + "使用jQueryUI组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8780d84192374d2f998aeb01e0985c84" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b2bb3e5d115f49cea071bad24e469db8" + } + }, + { + "案例实战:使用第三方插件": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8d7e2b3d66f34ff9a110d969a79e7333" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "设计动画": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "jQueryUI交互开发": { + "node_id": "web-65bc3e5704924435a7a31ad0fc54962c", "keywords": [], "children": [ { - "jQuery动画基础": { + "拖放": { "keywords": [], "children": [ { - "显隐效果.": { - "keywords": [], - "children": [] - } - }, - { - "显隐切换.": { - "keywords": [], - "children": [] - } - }, - { - "滑动效果.": { + "拖动对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a3516dbf075d4baeb6e0d1477f89dde1" } }, { - "滑动切换.": { + "投放对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6bee668e3113466b952c610cf2467d89" } - }, + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-285ca994397f4095aed24136483f3abf" + } + }, + { + "缩放": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8250e12f6c0144bba6beef3f503e1d21" + } + }, + { + "选择": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ab1c12b4474b4df995aa22f6c49f3e79" + } + }, + { + "排序": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e66420b12ed642dabecf70f555e65862" + } + } + ], + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "jQueryUI小部件": { + "node_id": "web-fbe8ca6c3f434f67ba5ae31f2d3901cb", + "keywords": [], + "children": [ + { + "选项卡": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0c0712addfd648818300dbdbea339c91" + } + }, + { + "手风琴": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-84ac79ed0ebf4d2bb2bd3d9361a36cc6" + } + }, + { + "对话框": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1237f47941fb4bd79add834f73518d1d" + } + }, + { + "滑动条": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-03c4f7da654b464c87d138ce0a6ceac2" + } + }, + { + "日期选择器": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0984d273d3a44d79ad2cf44196dba8be" + } + } + ], + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "jQueryUI特效": { + "node_id": "web-3716eb4fe30c4cd9aea128d3411bfc63", + "keywords": [], + "children": [ + { + "特效核心": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-873775a888f942c1afa1b29c46c77e00" + } + }, + { + "高亮": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d344e852613540db9bdf31f2d573b0c2" + } + }, + { + "弹跳": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-09d1a52a6bde40f5a498bd3f6f328b6d" + } + }, + { + "摇晃": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9cd312abef8f47439608187e6089c0c6" + } + }, + { + "转换": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e4e1ffaf3dae49468566fe220526a021" + } + }, + { + "缩放": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-83920df5f53d4b3bb2aefc1dcd1f166d" + } + }, + { + "爆炸": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9c6a67cdc84d4effb18e8fda6c469955" + } + }, + { + "抖动": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cbdf978d17b84d7a860778d93d1ce16c" + } + }, + { + "落体": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fac11250a47f44f5933d9e558899c0d7" + } + }, + { + "滑动": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-350519e87cf54f11bafebb60a7125430" + } + }, + { + "剪辑": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b70d931bcc804b78b74c7709cc1477bc" + } + }, + { + "百叶窗": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d6af22f6f62b4d6c92395a5d7b5a7adb" + } + }, + { + "折叠": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-45f0aa4a9eb74eeaad1e7a65e83bb13a" + } + } + ], + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "浏览器和导航开发": { + "node_id": "web-6fef11f692f646259990e3b543dbb244", + "keywords": [], + "children": [ + { + "浏览器开发": { + "keywords": [], + "children": [ { - "淡入淡出.": { + "浏览器智能检测": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1bc097b542914ba2912584b1e38601d3" } }, { - "控制淡入淡出度": { + "强制渲染": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4094ee4e845d4c999c2dd64a871438c9" } }, { - "渐变切换.": { + "浏览器插件检测": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-24e3fe4087184edeaf786fcc21730a94" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-86791ba1012f48aebfc77f847ed62b1b" } }, { - "设计复杂动画": { + "菜单开发": { "keywords": [], "children": [ { - "模拟show()方法.": { - "keywords": [], - "children": [] - } - }, - { - "自定义动画": { + "使用jMenu菜单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ca2740cec7f14d5db84007b5e516e633" } }, { - "滑动定位.": { + "uiSelect下拉菜单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ccb0123c816b41dcaeea7499bbe6540e" } }, { - "停止动画.": { + "Apycom弹出菜单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1c448db1955a4cdb94dd98da3f06f3f7" } }, { - "关闭动画.": { + "Smartango内容菜单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-79158a70ce17475f8576e75a44991395" } - }, + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8ba91ad489ee4a4d9e8f5b4576044ce5" + } + }, + { + "导航开发": { + "keywords": [], + "children": [ { - "设置动画频率": { + "jqDock码头导航": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fe9d04981dd9428193788cdd86d7f4f6" } }, { - "延迟动画.": { + "AnythingSlider预览导航": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-eccf970fd0eb48508dca3ebbad172256" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a6561fe97a1a4ba1bda716c211eeeeba" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "使用辅助工具": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "表格开发": { + "node_id": "web-84e98962dd2943e6a1a616a587fb3376", "keywords": [], "children": [ { - "检测浏览器": { + "表格排序": { "keywords": [], "children": [ { - "检测类型.": { + "设计适合排序的表格结构": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b20ecb13ca4c4090997cb7772a5d7791" } }, { - "检测版本号": { + "实现基本排序功能": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-387009683b1f4742a8c66e45efa4a881" } }, { - "检测渲染方式": { + "优化排序性能": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0a52c84c21884e0fa5cf2db29573e062" } }, { - "综合测试.": { + "优化类型排序": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e2f06d3db3f34985b302481283db8873" + } + }, + { + "完善视觉交互效果": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c78eabc709de4bb793261dc032b4ab74" + } + }, + { + "使用tablesorter插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f8a51f14b98d46649b4d059e8fbbb30d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b18e832f5ffc41669ac291784706a5e8" } }, { - "管理jQuery库1": { + "表格分页": { "keywords": [], "children": [ { - "兼容其他库": { + "使用服务器分页": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-25068e6059214ddbac238b13f0589617" } }, { - "混用多个库": { + "使用JavaScript实现分页": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c9efac39593246699512ba53748d5155" + } + }, + { + "使用Pagination插件分页": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c106863a385d4728bd313e9f3fa6543b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-da902bb3b441430cbe381c7df1195843" } }, { - "扩展JavaScript方法": { + "表格过滤": { "keywords": [], "children": [ { - "修剪字符串": { + "快速过滤": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7a01bbcd85cc45029462f6b1c970632d" } }, { - "序列化字符串": { + "多关键字匹配": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d248f2e941da4ddbadf7508f0dab2d4f" } }, { - "检测数组": { + "列过滤": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ab45f73a02a8413a892173713c7df449" } }, { - "遍历对象": { + "自定义表格过滤插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6cafeb923d414adbb71889026f0fd595" } }, { - "转换数组": { + "使用uiTableFilter插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f29fdd84212e4f518b03efde7de6625b" } - }, + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-37d3920578824c27bd4a1622da7797cb" + } + }, + { + "表格编辑": { + "keywords": [], + "children": [ { - "过滤数组": { + "实现表格编辑功能": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7d7fee64fa854a29b288c44260253dd3" } }, { - "映射数组": { + "自定义表格编辑插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ad7b53f20fcd4730bb35a288028ac5a3" } }, { - "合并数组": { + "使用tableRowCheckboxToggle": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-70c17470c3bf42678d3cf1087449bb10" } }, { - "删除重复项": { - "keywords": [], - "children": [] - } - }, - { - "遍历jQuery对象": { - "keywords": [], - "children": [] - } - }, - { - "获取jQuery对象长度": { - "keywords": [], - "children": [] - } - }, - { - "获取选择器和选择范围": { + "使用TableDnD插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f657463cf83d424597f8ee05bd244bf1" } }, { - "获取jQuery对象成员": { + "使用uiTableEdit插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3b881b5139a446558becedd685d9a0b4" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8072fe58653d48d1a638647813605065" } - }, + } + ], + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "表单开发": { + "node_id": "web-06fb3bf1b53c40f59cbb27c54cb7335b", + "keywords": [], + "children": [ { - "使用缓存和队列": { + "设计表单": { "keywords": [], "children": [ { - "认识缓存": { - "keywords": [], - "children": [] - } - }, - { - "定义缓存": { - "keywords": [], - "children": [] - } - }, - { - "获取缓存": { - "keywords": [], - "children": [] - } - }, - { - "删除缓存": { - "keywords": [], - "children": [] - } - }, - { - "jQuery缓存规范": { + "设计表单结构": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-63b9bc17dd264dc4bf802851d06dba0b" } }, { - "认识队列": { + "设计分组标题": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d9fb8a8a116f449c876d6c808d4159e3" } }, { - "添加队列": { + "设计提示信息": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b60c0228a17a45d2ab77d784dd5eb482" } }, { - "显示队列": { + "设计条件字段": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-16817201b0fa4e20bca84f2e8ef7da08" } }, { - "更新队列": { + "使用checkbox插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1369058dac0547909603a5db2cf20278" } }, { - "删除队列": { + "使用jqTransform插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-042cbbced5064067936172e929756d48" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-02a0286b235c43fdbfe02d4be7136e15" } }, { - "使用延迟对象": { + "表单验证": { "keywords": [], "children": [ { - "认识deferred对象": { - "keywords": [], - "children": [] - } - }, - { - "Ajax链式写法": { - "keywords": [], - "children": [] - } - }, - { - "定义同一操作的多个回调函数": { + "表单验证基础": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6383546a70b942c99d8f36305b88ee01" } }, { - "为多个操作定义回调函数": { + "使用jQueryValidation插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-526c0d6f73eb473990cc9edda528bfdd" } }, { - "普通操作的回调函数接口": { + "使用validationEngine插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b0cc98cfa9e74a78b0825c2d35073653" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-53248e9e0fba4b1d82bed25394ae10d8" } }, { - "使用回调函数对象": { + "增强表单": { "keywords": [], "children": [ { - "添加回调函数": { - "keywords": [], - "children": [] - } - }, - { - "删除回调函数": { + "使用Elastic插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b9b947cba1cc4e138ebac96875497bfe" } }, { - "判断回调函数": { + "使用Autotab插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e9fb53f68fd84e8a9df05febf1f55121" } }, { - "清空回调函数": { + "使用maskedInput插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f305056cf16542348a75da8c21a41bbf" } }, { - "禁用回调函数": { + "使用passwordStrength插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-92ffe411e7074fc3b873a2abb66e61d4" } }, { - "触发回调函数": { + "使用formToWizard插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5285c6623b8e46bf88e0d93b6d84e250" } }, { - "锁定回调函数": { + "使用datePicker插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9976fcde9c3d463db53acc7e9351128c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5ee76f2186384f9c929153bef5193fd1" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "自定义插件": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "jQueryMobile基础": { + "node_id": "web-643864db42024c11a2e381551dbabbe0", "keywords": [], "children": [ { - "jQuery插件开发基础": { + "移动开发概述": { "keywords": [], "children": [ { - "jQuery插件开发规范": { - "keywords": [], - "children": [] - } - }, - { - "jQuery插件设计原理": { + "移动设备统计分析": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9aa78e35be2d4aa197ef07aa02278bff" } }, { - "定义工具函数": { + "手机浏览器兼容性测试结果概要": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-04048f1eeb77488387f497273221a354" } }, { - "定义jQuery方法": { + "开发中可能遇到的问题": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6b6c914897e840f8b5d4ede10a5b0dd1" } - }, + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5c320516282c4721912f30574e3bedde" + } + }, + { + "jQueryMobile概述": { + "keywords": [], + "children": [ { - "匹配元素对象": { + "为什么要选择jQueryMobile": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9476af0756784cb284ef32061b81cb3e" } }, { - "使用extend()": { + "jQueryMobile移动平台的兼容性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d3fbec88768741d0b6e6934ecbc4aca4" } }, { - "定义jQuery选择器": { + "jQueryMobile的功能": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0ef8711b35204f0a89b7e12731767d36" } }, { - "优化默认选择器": { + "jQueryMobile的特性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cae5d60942cf4ca2827205927e32a91b" } - }, + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3ac159836b174ee59ee7f5d6958d8af6" + } + }, + { + "安装jQueryMobile": { + "keywords": [], + "children": [ { - "封装插件.": { + "下载插件文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-395064ff7b894dd2be99714cc16d66a1" } }, { - "开放参数": { + "初始化配置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9e1eecfd75384ecdb6061e8b9a3e3c2c" } - }, + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-11458480a5fd4e4b890471580e5dcae0" + } + }, + { + "案例:设计第一个移动页面": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-76ef71e01dfe483882aceb5b773a4adb" + } + } + ], + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "设计移动页面和对话框": { + "node_id": "web-f6479260be7c438e9424ed0f0e0732a4", + "keywords": [], + "children": [ + { + "设计页面": { + "keywords": [], + "children": [ { - "开放功能": { + "定义单页": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2127de5cafe24e0186a6013bd14cf7f4" } }, { - "保留隐私": { + "定义多页": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b6db12c5289c4feca351eeabaec649fb" } }, { - "非破坏性实现": { + "定义外部页": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a0294f34ba244a60b2b156d820d502cc" } - }, + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-08e9baa9002740b19c7db3d6c4b0dff4" + } + }, + { + "设计对话框": { + "keywords": [], + "children": [ { - "添加事件日志": { + "定义对话框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ee7b86be1c0948db9c9da045ff613347" } }, { - "简化式插件设计": { + "定义关闭对话框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-906ed33e95984a61bc6b2a32f636f4fa" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3395cac1ac064b72a16da911d52479b0" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "网络请求": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-592e3ff39e9c4e9093f26de5be14dd9b", "keywords": [], "children": [ { "json": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-341775d8d584467c99f1b0f71fc94ccf", "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [] } }, { "ajax": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-1a3a3ea7158646e1891e7d69ba50da8e", "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [] } }, { "axios": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-0decda0d3cfb4cb6b30116a902f5e61b", "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [] } }, { "mock": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-1069b0ce04cf4873acafca0b76eb96b4", "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [] } }, { "proxy": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-b3bf96ee2074408eb3c1c5d7382c9867", "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "移动web开发": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-8f89ff21d739431499e2868ad9f0da17", "keywords": [], "children": [ { "HTML 5移动Web开发实战": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-9f559589fd5848068ebad666e456f70b", "keywords": [], "children": [ { @@ -3749,22 +5443,34 @@ { "HTML能干什么": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1c8d62c6d1bc4878975071bef75148b1" } }, { "HTML的核心要素": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7107e73a4ac647aea858d617b87bc188" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-01e33d37700e411abf2a5641fdc0088c" } }, { "HTML的语义来源": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-550bf8f8e14e473596cc1185eaf3fa51" } }, { @@ -3774,383 +5480,327 @@ { "全局属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-995d05bcb73846718ba89db82adbd435" } }, { "HTML 5与它的全局属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dae7ad813242493ea1d9ef3f3cef0c90" } }, { "内容模型(content models)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aca14502337b4e43802fc95b6e7b0cec" } }, { "文档元数据(Document metadata)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b07b8501e87d4b878b95d4ff420f7de2" } }, { "区块(sections)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8caf05eb17b44cdd84a340a58ad2108d" } }, { "分组内容(grouping content)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-055e5164b371464693c78e52146fceac" } }, { "文本级语义(text-level semantics)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-32c6c21346024ad8b6d6a7ffa856bb00" } }, { "修改记录(edits)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-096c349963b04637b4a718ffe51598b6" } }, { "嵌入内容(embedded content)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5d3d08900f3745fdb20fd73ef7b8f3f3" } }, { "表格数据(tabular data)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8b28b3560f7d475882340e1b3dff8654" } }, { "HTML 5表单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cb3da557f5b44ce48dcbd6b4892d3f18" } }, { "input元素和其属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4d2386f024224792ad59fb34ea45a307" } }, { "表单操作": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-66edef48dea14ed58138234b93b51b19" } }, { "HTML 5表单兼容性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-37e4dcbb8a8e4a66bd21e73a80862493" } }, { "交互式元素(Interactive elements)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-35a8bf06542d4253957552166ea3b965" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-01ab97f864ca4b519354e277e451530f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "history与导航": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "初探CSS 3": { + "node_id": "web-03bb14b5c137469fb1c416367e688fa9", "keywords": [], "children": [ { - "基于hashchange事件管理导航": { - "keywords": [], - "children": [] - } - }, - { - "HTML 5 history API": { + "关于CSS的那件小事": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-579e57019b6f454a870165bfe4dc3d8b" } }, { - "history.js": { - "keywords": [], - "children": [] - } - } - ] - } - }, - { - "站在巨人们的肩上--jQuery Mobile": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [], - "children": [ - { - "移动Web框架概览": { + "CSS的核心概念": { "keywords": [], "children": [ { - "HTML 5移动应用技术大观": { + "语法、层叠和特殊性(specificity)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f6856bb2474344b3971a7f03e6ad8123" } }, { - "因地制宜、量体裁衣": { + "框模型(Box Model)": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cc0800494a4145b2afb5f2f28c439090" + } + }, + { + "可视化格式模型(visual formatting model)": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cf26b57b0e47483ea88b14b0f4ed20d6" + } + }, + { + "表格": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-23848edb1b914c01b0d07229701a208a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6d7fd6ce48c44c96b0888b4df252a15a" } }, { - "jQuery Mobile": { + "CSS 3选择器增强": { "keywords": [], "children": [ { - "综述": { + "属性选择器的妙用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0ba3e6337aa341fda6ea932e282d8562" } }, { - "Hello,jQuery Mobile!": { + "强大的结构性伪类(Structural pseudo-classes)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ddbea630ed3948409b2ce1dcd24d743d" } }, { - "页面(Pages)": { + "其他选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a94a1fef3cfb4510835c254b1344bc06" } }, { - "Ajax导航模型和转场动画(transitions)": { + "CSS 4中的选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-af6cc3adf20a42dbb46c462ab31319ad" } - }, + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d5b7ef6d8f0f44389a029c2ce1a16e40" + } + }, + { + "和图片说再见": { + "keywords": [], + "children": [ { - "UI组件--一切皆响应": { + "背景和边框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-17f393f36d364a7db2610c7118157b8e" } }, { - "UI组件--表单元素": { + "渐变和阴影": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e76b878a543547b5ab2d85e3bcf9619c" } }, { - "UI组件--Header & Footer": { + "自定义字体": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-26addaaf78524982ba5c1a22635c7f2b" } - }, + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-16ec6110fb5d481e9c9ac9db396f40bb" + } + }, + { + "CSS 3布局之道": { + "keywords": [], + "children": [ { - "UI组件--ListView": { + "炒冷饭--负边距与浮动": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3d151fe05b38495eaed24d04849fe48a" } }, { - "UI组件--Collapsibles和Accordions": { + "栅格系统与多列布局": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-94d7cf462c6f436681f688e163c0a66c" } }, { - "UI组件--popup": { + "弹性盒布局(Flexible Box)": { "keywords": [], - "children": [] - } - }, - { - "UI组件--dialog": { - "keywords": [], - "children": [] - } - }, - { - "响应式组件--responsive grids": { - "keywords": [], - "children": [] - } - }, - { - "响应式组件--reflow tables": { - "keywords": [], - "children": [] - } - }, - { - "响应式组件--Column Toggle tables": { - "keywords": [], - "children": [] - } - }, - { - "响应式组件--sliding panels": { - "keywords": [], - "children": [] - } - }, - { - "主题化和themeroller": { - "keywords": [], - "children": [] - } - } - ] - } - } - ] - } - }, - { - "Sencha Touch": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [], - "children": [] - } - }, - { - "初探CSS 3": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [], - "children": [ - { - "关于CSS的那件小事": { - "keywords": [], - "children": [] - } - }, - { - "CSS的核心概念": { - "keywords": [], - "children": [ - { - "语法、层叠和特殊性(specificity)": { - "keywords": [], - "children": [] - } - }, - { - "框模型(Box Model)": { - "keywords": [], - "children": [] - } - }, - { - "可视化格式模型(visual formatting model)": { - "keywords": [], - "children": [] - } - }, - { - "表格": { - "keywords": [], - "children": [] - } - } - ] - } - }, - { - "CSS 3选择器增强": { - "keywords": [], - "children": [ - { - "属性选择器的妙用": { - "keywords": [], - "children": [] - } - }, - { - "强大的结构性伪类(Structural pseudo-classes)": { - "keywords": [], - "children": [] - } - }, - { - "其他选择器": { - "keywords": [], - "children": [] - } - }, - { - "CSS 4中的选择器": { - "keywords": [], - "children": [] - } - } - ] - } - }, - { - "和图片说再见": { - "keywords": [], - "children": [ - { - "背景和边框": { - "keywords": [], - "children": [] - } - }, - { - "渐变和阴影": { - "keywords": [], - "children": [] - } - }, - { - "自定义字体": { - "keywords": [], - "children": [] - } - } - ] - } - }, - { - "CSS 3布局之道": { - "keywords": [], - "children": [ - { - "炒冷饭--负边距与浮动": { - "keywords": [], - "children": [] - } - }, - { - "栅格系统与多列布局": { - "keywords": [], - "children": [] - } - }, - { - "弹性盒布局(Flexible Box)": { - "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b04943a12cc346dfa1f40d5e4e17315b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a50dbcb43e554889b947b6ac4f6b09c1" } }, { @@ -4160,22 +5810,34 @@ { "CSS变形(CSS transform)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-daa026ceb06f4301a5f591ad92d7c692" } }, { "CSS过渡(CSS Transitions)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-77064f8c1fdd44a8a71b717f5be966e8" } }, { "CSS动画(CSS Animations)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5c681dce4b314a3c86b356959b2b0c5c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9bec7709360849ac8bd6795d67dfb7a2" } }, { @@ -4185,54 +5847,80 @@ { "从两栏布局开始说起": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7a636542d1c24e91aa0eadda965a8b67" } }, { "从media到media queries": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0713df3e424247158f810417fae7cf4b" } }, { "响应式栅格系统": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1a31f198adb946a3835a46d3f1544418" } }, { "移动优先(mobile first)理念": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6fea20685e4f4552858f6cf38a649818" } }, { "另一种思路:后端模板输出的优化": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ad2529b4927c4a279e5c2a5460e528af" } }, { "其他细节": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1052bbf44150408392cec5701e215314" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-72f0544a37e74345bf34125f0a6b77c7" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "从网页(Web page)到应用(Application)": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-d9aa5a8923034dc6831bd1b4234ab794", "keywords": [], "children": [ { "Web不能承受之重": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ec02accf3ccc496b92c4e562411c84ff" } }, { @@ -4242,22 +5930,34 @@ { "cookie和cookie的局限": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ef105ae2e60a4ba68b16e702576f4c98" } }, { "来自HTML 5的Web Storage": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7e1a80bb2bf54e68856b541d8a948d1f" } }, { "IE的userData": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7a09399c50864ded8e75606449f9a0f5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a9692591a63f447fb5b77ee658529878" } }, { @@ -4267,16 +5967,25 @@ { "缓存和应用缓存": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-16f3d1d77fa54369bd717bba8aaea3d6" } }, { "应用缓存的基本使用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0185d330bd974bceaf8fcdea00f04dad" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-85f74726d7f34a2e9de826c0ef3fd686" } }, { @@ -4286,16 +5995,25 @@ { "模拟拖放": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0afed97b98b04ac3929d837e81c30a4f" } }, { "原生拖放": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-045dc805954844d4812f39d493944868" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e09f8f9ebc27490f99e437c69f6f3150" } }, { @@ -4305,387 +6023,796 @@ { "选择文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5f10777e91304ed8a09d5b5a01af8313" } }, { "操作文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a481116d38bd4204bb271350e3258471" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3ffd1708ba5245f78198fc3f2b0c3735" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "指尖下的浏览器": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-6456925ee36d4eb5af730c15653842cf", "keywords": [], "children": [ { "基本touch事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f5c0a876a15946bcb31463cd549a9a19" } }, { "模拟手势事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-838256a226bc49268563718768927f60" } }, { "hammer.js": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ebce75440ca548dbacfb2bb73549560a" } }, { "实例:精仿iOS的相册": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-40c4dec913bd45908438da9f2083b2b9" } }, { "工具": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bf5a0e7bed2a489884406ccb960ce3ef" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "地理定位(Geolocation API)": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-2c64a12196bc4a188f1526d5dcbb988d", "keywords": [], "children": [ { "获取当前位置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6a63a42cd6704c34a1fd02f565f164c6" } }, { "监视位置变化": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7a69c5bfb72d4165a0d59c233259c71b" } }, { "来半斤Google maps尝尝": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-036cb314a15c46aa9d82c7258d8190d9" } }, { "开发者工具": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9e74ad7e23764b9394ad313fd3d772c3" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "Web Worker": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-8a964a4865ed4cd2b218efde8f89543b", "keywords": [], "children": [ { "单线程语言之殇": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4e636f730c774181acd4eefcce527e73" } }, { "为JavaScript引入线程技术": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e70a025727594f80b11b37f024d1ecb6" } }, { "嵌入式Worker代码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-858d19d28925457d8522130af7f9665c" } }, { "共享Worker": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4c0321b5e83a45d997def857a8a45c34" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "通信基础": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-bfcae04eeb694d7485a65801f9366eb1", "keywords": [], "children": [ { "XHR 2": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6e3ccca4c30a4b55a18d649eba0eb2a2" } }, { "跨文档通信(Cross-document messaging)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-44a32202d80d4e0493a4582e5aa9926f" } }, { "通道通信(channel messaging)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1e99d0b9485f4edc9903f6209ca051b9" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "实时Web技术": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-9b07c02f7dcc4e149bb84594bede7331", "keywords": [], "children": [ { "轮询和长轮询(comet)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1d51c53e752b406e9fa58557b0d09eca" } }, { "服务器事件(server-sent events)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ab0b7cbf299b47f2a171d15e37cdc244" } }, { "Web Sockets": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cac418e9d1d648129feaef5ba9cc9eb5" } }, { "利器:Socket.IO": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2d763550f43f405fb1daece31c8d2c06" } }, { "基于Socket.IO的聊天室": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-455ea39b9a4649b5b17f6b7912c5ae9c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "感官世界": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-b00ab8b532dc4b63974171cc7ca73dc0", "keywords": [], "children": [ { "感知方向(orientation)和动作(motion)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b9331a1fc08d40d9b9f7b21d7c2e30e1" } }, { "音视频捕获": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d3834d8c24864573a853fc8d5b69b5d0" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } - } - ] - } - } - ] - } - }, - { - "web中阶": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [], - "children": [ - { - "前端UI库": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [], - "children": [ + }, { - "bootstrap": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "history与导航": { + "node_id": "web-659e0dff4f034ac5980b6d2b24d9d684", "keywords": [], "children": [ { - "下载安装Bootstrap": { + "基于hashchange事件管理导航": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4fd11b23107e4faf9f2cbc6695d72e0c" } }, { - "网格及其用法": { + "HTML 5 history API": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e44c16630d7845d2893b558853fadd6a" + } + }, + { + "history.js": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-66ddbb1d4ae644d5a1aa302f4f0c8e63" + } + } + ], + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "站在巨人们的肩上--jQuery Mobile": { + "node_id": "web-b396fd2c0733452b9f0808c88306b4b9", + "keywords": [], + "children": [ + { + "移动Web框架概览": { "keywords": [], "children": [ { - "设计中的网格": { - "keywords": [], - "children": [] - } - }, - { - "Bootstrap网格系统": { - "keywords": [], - "children": [] - } - }, - { - "如何在Bootstrap中创建网格": { + "HTML 5移动应用技术大观": { "keywords": [], - "children": [ - { - "创建基本网格": { - "keywords": [], - "children": [] - } - }, - { - "响应式列重置": { - "keywords": [], - "children": [] - } - }, - { - "列的偏移、排序和嵌套": { - "keywords": [], - "children": [] - } - } - ] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1483c2961a38494d8b9543a0733f8396" } }, { - "Bootstrap中的响应式Web": { + "因地制宜、量体裁衣": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-02c332c735374a609ffcd9136da106f3" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-23fd6b177a6e42ce9ec0a20c763b6692" } }, { - "标签、徽章、面板、Well和超大屏幕": { + "jQuery Mobile": { "keywords": [], "children": [ { - "标签和徽章": { + "综述": { "keywords": [], - "children": [ - { - "标签": { - "keywords": [], - "children": [] - } - }, - { - "徽章": { - "keywords": [], - "children": [] - } - } - ] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4f8a2c973db047e9a238e29961421f86" } }, { - "Well和面板": { + "Hello,jQuery Mobile!": { "keywords": [], - "children": [ - { - "Well": { - "keywords": [], - "children": [] - } - }, - { - "面板": { - "keywords": [], - "children": [] - } - } - ] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b3d86d42966740acab6cd49b56717c6d" } }, { - "超大屏幕": { + "页面(Pages)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-12085509e3724eea8d6b6be45ae32373" } - } - ] - } - }, - { - "Bootstrap排版": { - "keywords": [], - "children": [ + }, { - "Bootstrap中的基本排版": { + "Ajax导航模型和转场动画(transitions)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-23469835f562419bba13d338470180de" } }, { - "标题": { + "UI组件--一切皆响应": { "keywords": [], - "children": [ - { - "标题": { - "keywords": [], - "children": [] - } - }, - { - "页眉": { - "keywords": [], - "children": [] - } - } - ] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-585a031a45df4f1b9b685dc0af995ea3" } }, { - "正文": { + "UI组件--表单元素": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4ee65f714f0744cca7046113425ffe0e" + } + }, + { + "UI组件--Header & Footer": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bc946b35d17d4c049aac7401478a8721" + } + }, + { + "UI组件--ListView": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a36a947d157b4b9cb0dd0e0e9eeed2e7" + } + }, + { + "UI组件--Collapsibles和Accordions": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dfc249fa134e4923beb054805b5064ec" + } + }, + { + "UI组件--popup": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b8e07042ae624b049b1a1410e35717de" + } + }, + { + "UI组件--dialog": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-37a69472f918480f87d12bd8634c7147" + } + }, + { + "响应式组件--responsive grids": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2272506ce42743acbb76d28e38127026" + } + }, + { + "响应式组件--reflow tables": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7cf08192df4f4c50b76244c79e433ad3" + } + }, + { + "响应式组件--Column Toggle tables": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ea38e2494da749429be495bafb0eb820" + } + }, + { + "响应式组件--sliding panels": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c270299188244ee6acf9e2abe74fb7d9" + } + }, + { + "主题化和themeroller": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cc2abebb8406451e852883da82adf568" + } + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7726bf3ed67b4b2e966e842501202c34" + } + } + ], + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "Sencha Touch": { + "node_id": "web-bf9dd40289a14fdc874ac41d0f6c1a92", + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [] + } + } + ], + "keywords_must": [], + "keywords_forbid": [] + } + } + ], + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "web中阶": { + "node_id": "web-cb674ce94c7042ac97d73a084646286a", + "keywords": [], + "children": [ + { + "前端UI库": { + "node_id": "web-5ee4c7e68d30491f9c1e2afc3241d463", + "keywords": [], + "children": [ + { + "bootstrap": { + "node_id": "web-15925180aca347e58a5a1009e0431f69", + "keywords": [], + "children": [ + { + "下载安装Bootstrap": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d957c97613b043d78b4618ad8087da05" + } + }, + { + "网格及其用法": { + "keywords": [], + "children": [ + { + "设计中的网格": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1110d7eb5d85449aaba6b0b0ae36c1a7" + } + }, + { + "Bootstrap网格系统": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2ec76995896b44f290f102d7828e391e" + } + }, + { + "如何在Bootstrap中创建网格": { + "keywords": [], + "children": [ + { + "创建基本网格": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7e8da9a85fc54b3983b0191422042789" + } + }, + { + "响应式列重置": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-68bce7793b0142449fb8a0914ec64327" + } + }, + { + "列的偏移、排序和嵌套": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5cc961fe1efa444680d2e9350631650b" + } + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b7a710a8d3404cb59528cc223bc9c6ac" + } + }, + { + "Bootstrap中的响应式Web": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-093085dba7b849e6a6388d7d711c7663" + } + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b8118be8fa3049469fabbf51a1d652fa" + } + }, + { + "标签、徽章、面板、Well和超大屏幕": { + "keywords": [], + "children": [ + { + "标签和徽章": { + "keywords": [], + "children": [ + { + "标签": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d8fd90ad70dc4acb80c928d73a29b8c5" + } + }, + { + "徽章": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5bc343f2c4c6467bb4146d6c36df7e88" + } + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e9579ec92a7143428b9ca8bb7c7950a0" + } + }, + { + "Well和面板": { + "keywords": [], + "children": [ + { + "Well": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8255687f615e46308e2d60bc2fdd8386" + } + }, + { + "面板": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d9af8a7fb4464b6987178a0cec54b1b7" + } + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8aa724953b114a83916eebedae5ad32e" + } + }, + { + "超大屏幕": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-67f0ac71123b4eb48f9e0822191f5ed3" + } + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-655e4c3dde95462395cbc5c35edab7f3" + } + }, + { + "Bootstrap排版": { + "keywords": [], + "children": [ + { + "Bootstrap中的基本排版": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-37c2e1d716264439bd511acb3a3fab5b" + } + }, + { + "标题": { + "keywords": [], + "children": [ + { + "标题": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6afb755c639c4b99ad644c61e63d1f2c" + } + }, + { + "页眉": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1b3b21aec93a44898c4038a745a2f919" + } + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-85a6300d410b46f28505759535a96055" + } + }, + { + "正文": { "keywords": [], "children": [ { "内联文本": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-17fc18980c7e47ac9013cf6f7f0eb4e5" } }, { "元素对齐": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5ba37c3e927a45f98e4e7422e0c1be84" } }, { "文本元素转换": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a8ecb04ec05d4a88af55dc7168615ce9" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b8a4a8f5e6fc4c119b5b7a2dee089748" } }, { @@ -4695,37 +6822,58 @@ { "代码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1d139e9bd85443d8a6c92e8d135c8fde" } }, { "引用语": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-91a5ddf4277546adb2bd4ae7429503e3" } }, { "列表": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-efd69324beda4b1bae8b06e1e013cd4e" } }, { "缩略语": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e97b3d47824340069bb35572961c8af8" } }, { "地址": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-65249380ba054ff1a5ec162c76df0b1b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e168def650fc4d19a43319d9e637d13c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8ed05afa02764e2e83d146237b3fb10d" } }, { @@ -4735,28 +6883,43 @@ { "基本表格": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ff7a1dcdfa614f9c9fa3423ebdb4437c" } }, { "Bootstrap表格类": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6d56314e4bda4752846169df823abb48" } }, { "包含表格的面板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cbb484590f524d8d906bec3ce63a6f2a" } }, { "响应式表格": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-278d72db42314e75b91a5cf615fd8f69" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-42bda780cd3c4e9b8967b643c3397fce" } }, { @@ -4770,16 +6933,25 @@ { "水平表单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2e0770be130e4f5d8911f02b84162113" } }, { "内联表单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b0b864a0f4714b7dbf1b4e27cd6186c3" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7176029add76408da6dd71ac621ce854" } }, { @@ -4789,34 +6961,52 @@ { "基本输入标记": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e4d0f02b00064fe3a453abc394cf894c" } }, { "复选框和单选按钮": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cdbd56f35d974462ae078cfefdc7c231" } }, { "下拉菜单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9f01f387bef04b5d983121fd1a99a0be" } }, { "设置表单控件的大小": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-14e420239b904651977292345d30f7ec" } }, { "帮助块": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e0f233bb16d248e8a1a9d8ea1c0972ff" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-054e95f1d85446058ef26bc424744c91" } }, { @@ -4826,22 +7016,34 @@ { "基本输入组": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7ae35ebb668b4700bc50bb3dbec09756" } }, { "设置输入组的大小": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aa4d58f1065e4d279bb808895fcc8d21" } }, { "奇妙的附加控件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-389158d6c93c46fbb6eb3a32f69604db" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f86ad69e3f754e96855e8b26a95c6713" } }, { @@ -4851,25 +7053,40 @@ { "焦点状态": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2b5a3660dd05418da56a8fc5ac386deb" } }, { "禁用和只读状态": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4465c5364bde466898d833f4aedbea88" } }, { "验证状态": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d4b37fb016044783a2559438e7170cb2" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-139d2d9c88f34799b611ca069fd0ab46" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4371760e236349ca9db3893027754729" } }, { @@ -4879,34 +7096,52 @@ { "响应式图像": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bc24e6e1dc854eb6ac1030fcf8d6addd" } }, { "图像形状": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3ab280213acd443e9145e923a65a857e" } }, { "媒体对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a8a7302937a64e0da3dd87a31aac6b95" } }, { "缩略图": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c8bf817dc10049cfb8dcf04fd47e91c2" } }, { "Glyphicon": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a2e9ab7ee7a247b3b9a8c9d36c25239a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ab31e6be1c094351ad9c6856a99a1ca5" } }, { @@ -4916,19 +7151,28 @@ { "按钮标记": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a8fbb881b2eb45a889f8faa133ecc4de" } }, { "按钮类和大小": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5568146034454a9b9293a48e397c04ad" } }, { "按钮状态": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f2bfb78b4cca473ebfb96082ffc485a8" } }, { @@ -4938,31 +7182,49 @@ { "水平按钮组": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fa4d8491e8aa42fa953d529232e4de0b" } }, { "垂直按钮组": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-88a2dfd4ef1a45bba87bd52b35b5a703" } }, { "按钮工具栏": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e373ba66e9454199ba9da59484d5cf85" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7cb1887e794849ada780cc15162bd750" } }, { "按钮JavaScript": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4d8ca8aabc9a48bd9993381b26caabd3" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7368aae00eb440c8adf9b3d4b3e01d80" } }, { @@ -4972,7 +7234,10 @@ { "标准导航元素": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ca13201d183f4f73ba85d0662f55ce7e" } }, { @@ -4982,16 +7247,25 @@ { "拆分下拉菜单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f3638e06fbd1432fb1066a555f78fd54" } }, { "上拉式变种": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a0d09f98f20045b08d14b9497e5c2558" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b29ac90a63b64d638ad2801fce1d442b" } }, { @@ -5001,43 +7275,67 @@ { "导航栏标题和品牌": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7d21c6ce217f4cc98ffd21e1ef5f73f4" } }, { "切换导航开关": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-88ccbe2482014d9a939b12e3ef3400f8" } }, { "导航栏中的链接、文本、按钮": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8dfe1f7f40f74c6fae514ec2183d2f48" } }, { "改变导航栏的颜色和对齐": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-14d9bcf461aa4e1a9a75d0059567f569" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-700a407d381940518360023847330987" } }, { "面包屑导航和分页": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-204743404846488683bf813b38a8aeae" } }, { "列表组": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8228725e86034f36a3b87473bdf5c8ba" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7b9d7090e7f848e8a73de667dbfe3cd0" } }, { @@ -5051,55 +7349,85 @@ { "更改颜色": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1ed5f0a71f134877b154c19ca1a10bbd" } }, { "图标": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-12afaababd9045979526f51942315698" } }, { "布局类": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-50d96dc265a2432dbf03e0100c2ed814" } }, { "显示和隐藏内容": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6a3a166da7b9480890b5a3440c158fb8" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a31da4e24812425bb12673513b0966df" } }, { "响应式实用工具": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ada0058e6f5d4f45a050420b22d66b90" } }, { "打印类": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ba048cda5fab4ce38df7c6e028776287" } }, { "响应式嵌入": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-afbe4fba7e4149dd94206be8a9ad40f6" } }, { "Bootstrap中的可访问性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d61a695eb14e43199a112635950f3a50" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e5e07ab23b814f539c6470c7713ec9d9" } }, { @@ -5109,7 +7437,10 @@ { "什么是模态窗口": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5a61c6fb5d864a1dbfa644b972cf6583" } }, { @@ -5119,16 +7450,25 @@ { "触发模态窗口": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-17cefb4ff95449fa9b55c03245b6aa9c" } }, { "模态窗口编码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4b919a196c5a46f38b72d6db4edf0726" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ed16f83470e24458865b0eca8779e413" } }, { @@ -5138,31 +7478,49 @@ { "更改模态窗口的打开": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d268cbf199dd483bbf0c48d1582e46d2" } }, { "更改模态窗口的大小": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d441c8d696b14fef94e3abe544b69b6e" } }, { "更改布局": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d1257c5cc38d44f89eb05263a204e749" } }, { "动态更改模态内容": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5232e106910a489d82eda331ba8db141" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4b90eb08dd8f4634afb5838a0bac3c59" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4d72ba66a2044cdab5b1ca0c423dc6df" } }, { @@ -5172,28 +7530,43 @@ { "附加导航": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bab461faf8384e10a0668ed15b5e7e7f" } }, { "选项卡": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c220041e8cf64d3184acdbbdd8632c89" } }, { "滚动监听": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-90fa46e82cc34a42bf7f721636da1f19" } }, { "结合使用这些插件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-33b88794ea1943b192e48be2a1c3811b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ec7d68251aff455dbfde00cd41e1d12f" } }, { @@ -5207,22 +7580,34 @@ { "工具提示选项": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-06fa04d9ea12468c88647f34d1d16ea0" } }, { "工具提示方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-55e12927fbcc45029659206d509129b0" } }, { "工具提示事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aaf2ebbf79b8401186d1a981c9204b71" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ce31e5e1fba440c68dbd60dab9f99b69" } }, { @@ -5232,25 +7617,40 @@ { "弹出框选项": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d1c8e0c124594bf9aaa3e5753f28002b" } }, { "弹出框方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fa922f502b4c4997afca1aed1b56085d" } }, { "弹出框事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4fbbcd725b9d46f892d1d0857eb2144e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ae559fa4df634f029858dc3564873fdd" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9211ce832bbc4b3da6e922c44570f994" } }, { @@ -5264,28 +7664,43 @@ { "按钮状态": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-addd220948b64f0eb6406f305a28476a" } }, { "切换按钮": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5587e7db74ed4d238ba3596fdbc6a542" } }, { "复选框和单选按钮": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7d2d18cb5f5e464792bec90669a7a66b" } }, { "按钮方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-809ef21a4db54731aec9fbabab5897a6" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c36aeec8a71f4cca873a8d059a19ac8c" } }, { @@ -5295,16 +7710,25 @@ { "警告框方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d7b8b0ef38c849aeae0a74c9fc5def15" } }, { "警告框事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-83b105c62bfd4f91964ea8b0e9d4564c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fad7aad9bb664e4780dc1de947b0fbc2" } }, { @@ -5314,19 +7738,31 @@ { "创建进度条": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-679011445d13473abf9223903bcbde65" } }, { "设置进度条样式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-08259822f4b0410a99aff81c33e769e0" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1fc52f595e8941008056a436adccfc5b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dcda08a87cb14c848a010dd0b1807c4a" } }, { @@ -5340,34 +7776,52 @@ { "创建一个可折叠部分": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-642295883aa24f638866fd6e2684d984" } }, { "水平折叠元素": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fa3b8a2d0af04687ad0e6117f6eee9fc" } }, { "折叠选项": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-61ff1e958f4c4e54a501f68c9facc8cb" } }, { "折叠方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-118fe5772b9d4c4c9396cca04f501bee" } }, { "折叠事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a14f4501e2f64f8fbfbfb12dfbf2080a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e9d6c3b6b69a4db2bddd26413836973a" } }, { @@ -5377,19 +7831,31 @@ { "创建折叠面板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7006a765836547a1854179547bda29f3" } }, { "使用折叠面板导航": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-deb19736814e43059392ea10acefd729" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-44f37fd2b8d0403d8fc0daec9df5775b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a1ba0908de1f4a9c81584bc1fbcf54a4" } }, { @@ -5403,16 +7869,25 @@ { "基本轮播": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4ba2bff3d9264259b9c03efd1d4dd131" } }, { "更精致的轮播": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-17a59c3548064263ae4af1dee78141b6" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8ce16ba208414ede9ac564929caec524" } }, { @@ -5422,28 +7897,43 @@ { "添加多个轮播": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-defdb09ce33744559243a3951c4fa79b" } }, { "轮播选项": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-494f1691283c4b1ca292f6a75c1bdd5c" } }, { "轮播方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0bbab5ebdba44d4da3b3d028c43606ba" } }, { "轮播事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-74dc52c32d3444b4bb4c026d095c887d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6477ef1218f24bdfa4f897eb948bb98c" } }, { @@ -5453,27 +7943,41 @@ { "轮播最佳实践": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a2bf760d377844b19f7c6689dabb22fd" } }, { "轮播的问题和解决方案": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f75d7a90c884427c91798fdb73fc4812" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6b6d92c1af6e48b8870c72b84cf8e83d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e7255098e3c047a1be7f4f74a679a760" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "layui.js": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-4f6b5320a5ea4265bfa0f8811754e2a4", "keywords": [], "children": [ { @@ -5483,94 +7987,142 @@ { "布局": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3eb6ee15a3254e2aaabec3942fd88f71" } }, { "颜色": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ceb6798bb318439a9025bfc9810a444e" } }, { "图标": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e106fa3e6c324ac4be383b56b80bcac2" } }, { "动画": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-acf78b43e0494548abbc344ff44cb41e" } }, { "按钮": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8764f4aca3d3435b85ec66b108959922" } }, { "表单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7c550b8bc1a74f5f8f821b0999a5cccb" } }, { "导航": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e8fe5e3dab9544ceba9717a598c5dae6" } }, { "菜单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-19541c684bed4f4faef47ee7d7c76bad" } }, { "选项卡": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-df13e14bdd4c4181b49f37355245373a" } }, { "进度条": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6e9afaad3d9f4727a6f121507164d270" } }, { "面板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c7bbcf4b89c04100af54ca9d94f11605" } }, { "表格": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-99abe063576d421399e86143252ef551" } }, { "徽章": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2a8ec93b81de462790d3074ce9d7c10a" } }, { "时间线": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5c503538e4fc47e89470dc76e463f936" } }, { "辅助": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-88dfcce0f5ec499c8cb6c2accee511f2" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-82ba4cf1a52945aab5f6ce4c73a9cd59" } }, { @@ -5580,120 +8132,179 @@ { "弹出层": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-104d4b4b22084f2d9a5246d35a4f57b5" } }, { "日期与时间选择": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d028b9033ba7422096bf14ddfb0f5675" } }, { "分页": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0883bc2a25a24a9d941f539e79946068" } }, { "模板引擎": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-00266071f54c47f1b76f925a7511cc75" } }, { "数据表格": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-344a99d32bdf4fef9e3c385457a3ba5a" } }, { "表单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-794c567b09334e4dbdb79de4d9b57bf9" } }, { "文件上传": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c78e50e6794f48a18ecc2ae81f3932f9" } }, { "下拉菜单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bd014fe248ba49bdacd02fd2c64d455c" } }, { "穿梭框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c8bdf6ebe4834a799063635b2bfe5618" } }, { "树形组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-73d67e20c81c4cc99f7f4348203551bd" } }, { "颜色选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6f08b01b4cc14987b1fa79f6de7c62b1" } }, { "常用元素操作": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-17d8b9de247340e3826dbc0490ed2905" } }, { "滑块": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7a597a165eac45948d1119a69ffbe2e6" } }, { "评分": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3eb78ff967d943ce8d933e5ebf29742a" } }, { "轮播": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-83d4bcc87cf444a697e6f9f4deff05f7" } }, { "流加载": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-36b8de6de07048cea2a43e0a1bc16311" } }, { "工具组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-72bd07d14a34410dae4f2c184e147e7e" } }, { "代码高亮显示": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-90fb5cf70b33483fabefdef60406d78e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-847ad02481d6442c994b565ef5c1e165" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "iView": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-583cc2e6f14e49078e9701947804d9e1", "keywords": [], "children": [ { @@ -5703,28 +8314,43 @@ { "olor色彩": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1d64ba674ef8468fabd609c46c310b25" } }, { "Font字体": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a6c23fd5c36a4d3692b0e6f09e60cf96" } }, { "Button按钮": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f133e30b61ef433d8d43fdaac71a17ab" } }, { "Icon图标": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b36b561372f04aae98078969ae8ab007" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b0300ada769e462f9d38431855a78a33" } }, { @@ -5734,520 +8360,769 @@ { "Grid栅格": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-992c9ec1dc9442fdb60fbad1958dc69a" } }, { "Layout布局": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d7417c5f7f364cffa06c1f1dd1d9be76" } }, { "Card卡片": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dc048e5790f54f64a24cf383901c167c" } }, { "Collapse折叠面板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d0982354a53f4794a1fefbc750868e5c" } }, { "Split面板分割": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aeaf391a50e94ec58c4421e614131e34" } }, { "Divider分割线": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d67b57060fd640ea98efcb43caaf35d8" } }, { "Cell单元格": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dcb83ae680804ab59371fc7ac2888e09" } }, { "Menu导航菜单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-97f476295f424fccb48aafeebb478f09" } }, { "Tabs标签页": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-287c1ce4f66242c6aa3c814157d7b562" } }, { "Dropdown下拉菜单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-46e73558d6204694b1420ab6d4f85fe3" } }, { "Page分页": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-09d0a714952e458bb56a0c5bd6c3a454" } }, { "Breadcrumb面包屑": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d1541e093a394dea812b2261fc4ed6b7" } }, { "Badge徽标数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a5444aa62dca4c2c9a1b63f956bf2bec" } }, { "Anchor锚点": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cdc592af85ec4955988181977490b237" } }, { "Steps步骤条": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f90cff6dc00649cf8e96945b0bbaab76" } }, { "LoadingBar加载进度条": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fc2b4998f1304bfcadf9d0196d99b718" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f87fdb2341cc4c53a6dace9e1099d295" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "element-ui": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-d14d9b3d30314196b0961452dda272e4", "keywords": [], "children": [ { "Layout 布局": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d49c3ab3704d477cbeeaff21f6ec81df" } }, { "Container 布局容器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-52abd85f99e343d3a14c88dac29275e1" } }, { "Color 色彩": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-349c76e61a4f47299ac272ef9c665b10" } }, { "Typography 字体": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e587db8c77f44b0183e87b2569599673" } }, { "Icon 图标": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-650c69b2c9e9404093c02e77da07a559" } }, { "Button 按钮": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0172cd57f6d641d39463bba19111da9a" } }, { "Radio 单选框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7f7b3b4f77a34f629fa82f6f2a5302b0" } }, { "Checkbox 多选框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-24b20616dd934adc9cc941f844181ed8" } }, { "Input 输入框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0ce8ad3a2c3a43bdb9370a1f450b2b86" } }, { "InputNumber 计数器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-534acabba66c4789968ed53f5d09902e" } }, { "Select 选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-73853e14c8ae43eb9db8242a5be9f04b" } }, { "Cascader 级联选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c984bc7473184672b83b980d7e5c3417" } }, { "Switch 开关": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-54e9c6c84998415987395f17afe231e1" } }, { "Slider 滑块": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-849538acc0c54a6da07bb14504fcafa8" } }, { "TimePicker 时间选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bfa7eab7d3cc49d5957494968e3720d0" } }, { "DatePicker 日期选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-83114b6a054942399d476161e3daf00d" } }, { "DateTimePicker 日期时间选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c16dfdc1ce7f403989a6da5ef97ad4cb" } }, { "Upload 上传": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e296b958ad9b49efbfc7beb6b194a7ce" } }, { "Rate 评分": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d9060a60f2ed488aa35128ed6c5c6922" } }, { "ColorPicker 颜色选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9801c83fd8784b7c9a3058f42ec89fae" } }, { "Transfer 穿梭框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-afb3703aaba14348982a4d07b8e8b28e" } }, { "Form 表单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7fb667f7a58a4f9db1a68b02dc94ff8f" } }, { "Table 表格": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d8e592f9a23749469c9103fcdb68c7c2" } }, { "Tag 标签": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2aabf4e18ea048a0b775074f54fec273" } }, { "Progress 进度条": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aac99b9f2cbb4ab3a53bbb8ec4c94efc" } }, { "Tree 树形控件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ecdc0861ef0e4deb9d64e3b560917757" } }, { "Pagination 分页": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9f7765d38bfe492fa0eac07810f077d9" } }, { "Badge 标记": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a4ad693666434e82a1c283aaaea84bc6" } }, { "Alert 警告": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-41dde436be4947dd99cfabcf59e3f93f" } }, { "Loading 加载": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3b6b847e5b024d7e8a214333a06b6cea" } }, { "Message 消息提示": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-489a904213264f6a8bb5df1b20a06345" } }, { "MessageBox 弹框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-34f6e8d521524da9b907454ea4c000c8" } }, { "Notification 通知": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-60730abf6e8643efa04ef9982fe3d2ba" } }, { "NavMenu 导航菜单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8f696f7a045a4eb3a79a3294a1b589f3" } }, { "Tabs 标签页": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d7e964f0a4464764a74f5abb62920e79" } }, { "Breadcrumb 面包屑": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e7352a64894d43be97f0a7a287690ab1" } }, { "Dropdown 下拉菜单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-214f8463ed6e4fa29f9be5988f8c40fe" } }, { "Steps 步骤条": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6deb6eccdab244ac9de2e85b4ccefada" } }, { "Dialog 对话框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8198de544b76406a9a4071e0cf57de43" } }, { "Tooltip 文字提示": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a64317c394a24e9880277d62ed704a0c" } }, { "Popover 弹出框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-83d934f4016943f596a8cf613d5cad0e" } }, { "Card 卡片": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9e3cde5a678047f6972d4050402627d8" } }, { "Carousel 走马灯": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7cb70fef4696460cab5dd616be7ddf21" } }, { "Collapse 折叠面板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-96218005aab247a0bbc81930a49cac68" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "数据可视化": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-2b07d78b3b114d898370f53a04b1cab5", "keywords": [], "children": [ { "技术标准": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-b85bcd90027744119d3717681025b3a6", "keywords": [], "children": [ { "Canvas": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-82e76100b6f546cbb2d18fc671a3abf5" } }, { "SVG": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fff4ee565a58437ca20816308b13ca7e" } }, { "WebGL/2": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3961334632db4fe18c0307487dfc56ba" } }, { "WebGPU": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b68367d785f546128b2b7530d321f33d" } }, { "OpenGL": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7d380e5ce2ff4b4d8816679dce01370a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "数理统计": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-e86f6da3b4d24fc988d24be4fa0598d1", "keywords": [], "children": [ { "统计学": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-527e027799284db5b30cd1d824ac3791" } }, { "平面几何": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4ae5fb6cb4b14dec9584a99ca417cd79" } }, { "线性代数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9add55b5e1ce4f64a0a9a1b0e8957029" } }, { "离散数学": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-26b1e18a876d4e899c8bcf3472257ef2" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "图形美学": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-e898c86b0b9b42fb8a067f8342461b64", "keywords": [], "children": [ { "色彩": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cd4a7b9b5aae475b986cada1adba0c22" } }, { "图形": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-adfffd831b304cef89f49ebad4ae08af" } }, { "动画": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-016a51d30f6e41e2a32b6cac5bd022b4" } }, { "格式塔理论": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8829115dbcbe46e0970f619ad579d32b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "可视化基础概念": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-2a115aec0fd34831b1746bde406c8330", "keywords": [], "children": [ { "数据类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3c0f495db61a478e8c3024ea9c70c5d8" } }, { "视觉通道与映射": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2ade18b94f0b479a91b640c39d0c9a05" } }, { "信息密度": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fa159c7a66cc4fb397ad98a117030a7b" } }, { "可视化隐喻": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-682f05110c0848958e532870a06ce33e" } }, { "图形符号学与图形语法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e6121cf8aa9d4d48bc5ca7bbe7bfebcc" } }, { @@ -6257,52 +9132,79 @@ { "折线图": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c656897bbe364c50a0b46ed9321d87de" } }, { "柱形图(条形图)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cfe0644bac994d039209dd4a2d363385" } }, { "饼状图(环型图)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9a216b0a9a1b44c7ba220aee23e43bfb" } }, { "散点图(气泡图)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-136bbdf707ca4575bef6173f693439e6" } }, { "雷达图": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-78c685b098774d9cb85f48855d5bcfa6" } }, { "地图": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bc275ab7cd624548b213cbdb99d2bcca" } }, { "多维表格": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-752f472819d14b74b12ff8ab9df7abca" } }, { "其他": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-05e882304a274ef88a530ede31e3ce7b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a374e3166dab4a77b06f2c796595c6cf" } }, { @@ -6312,24 +9214,35 @@ { "2D": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-84108f9d72f6449fb27e95c6a6626475" } }, { "3D": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1c3764abcca04376b241f4530a8db94a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c820c67d5ad3497cbf8c79804cfae525" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "图表类库&可视化框架": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-27c4f15f8aed4816a56021ebe632ae21", "keywords": [], "children": [ { @@ -6339,22 +9252,34 @@ { "D3": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-30bc26c5ebf048febd1882e55aa779ae" } }, { "G2": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bd0a2d7d5a9f4126bea8390ab5560b87" } }, { "Vega": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d2c3859abb1544a89a67556f83082b8d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bbf55fa1b58d41228aee737ef8a04d0d" } }, { @@ -6364,22 +9289,34 @@ { "Chartjs": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bac391a1c5c744489e06973858145ef8" } }, { "ECharts": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1b046c01f8bc4eeba3093d1dd5061815" } }, { "Highcharts": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-df66965146a94db1adbf4afbde4ee0ed" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-92fd3267813b41df921d06ed01592b17" } }, { @@ -6389,34 +9326,52 @@ { "Cytoscape": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-555882651e0847d68a195b14dcec58a1" } }, { "G6": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c4a404963963412c982623410866068a" } }, { "mxGraph": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9fd7f88e99a749a3a2efcff4a20f6255" } }, { "Sigma.js": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bc42c721012445f4a573a36596b92b82" } }, { "X6": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5ed1874d24d64f448fdee9757ea9bb3f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a370085eca5f4da3a4a77ad2db4da4c0" } }, { @@ -6426,76 +9381,109 @@ { "Leaflet": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-751fc5c0bed24c3c9bfb7ed6ce00790b" } }, { "L7": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d4c9f06cd04b450d928fa272986e7de9" } }, { "Mapbox": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fe9aee29fa5a4049b0aed040b228516f" } }, { "PolyMaps": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-90cda72ae014411aac5662bebc911925" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-badeec2c84934e81a78bb1c215499f4b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "领域方案": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-ed5c08120b3a47a2aacdf61d0fc5aff4", "keywords": [], "children": [ { "监控可视化": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-41330cb3d86b44208da70a7fab2760d4" } }, { "关系可视分析": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-890fcbddee4c4188986a5ef055ffd3e5" } }, { "金融数据可视化": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e221cb99e8a14f39a15a1cbc5237afbd" } }, { "商业智能可视化": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ca7fa77247ca4453977c95650d1bca93" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "js拓展": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-53d625c865b645ab84e7ad2c37012007", "keywords": [], "children": [ { "es6": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-3c609d5ad1474993850201a3f8127d12", "keywords": [], "children": [ { @@ -6505,28 +9493,43 @@ { "ES背景": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a91d842d2e8446288fefeab071108fbc" } }, { "ES历史": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b29a1bfa230440c2ac4e7be59feb5da9" } }, { "目标与愿景": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5a60783a35844065a823cb9e88713213" } }, { "环境搭建": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e52167c65fcb4431a687196c17112579" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c184970db15e4842853b57e964bf7c27" } }, { @@ -6536,22 +9539,34 @@ { "let与const": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f19e57eaf08c41cb9759e7f4faa54122" } }, { "解析赋值": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1947995dfe644ee58b2d8485a4671be0" } }, { "Symbol": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3363c43386e849208b1d2675fa1a0e04" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3eae9df7af2a4925a6fe64ef78869899" } }, { @@ -6561,40 +9576,61 @@ { "Map与Set": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8cd12dc1068b498382fc3c2c6fb623a8" } }, { "Proxy与Reflect": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8e287ed5beaf4f46840edaf9b80b0eac" } }, { "字符串": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9777ef2ff98341aab66164ed71b25ad5" } }, { "数值": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cf4ab20d9f43405d80802a0d8fb47042" } }, { "对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7018a088632241dfa683ed3fc49b0364" } }, { "数组": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5e97efb036714605848b71976d5ce7c8" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8b9facf061cc46b9ae1254049f05542e" } }, { @@ -6608,16 +9644,25 @@ { "函数的扩展": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-05973bcc4b484e848cdd053fd6d56ebc" } }, { "箭头函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ee3d2522930a442fbadad904059e95e5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f00608a4b9eb47e5add5528ae93cca29" } }, { @@ -6627,16 +9672,25 @@ { "Iterator": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3c77c22c79d046abb01f03895cbc6e9d" } }, { "for...of循环": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fc105f31b94342da87ccf0721d7d75a5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fbe2594ef52146b1b0ec34f2c6ee47cb" } }, { @@ -6646,28 +9700,43 @@ { "概述": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fb36e830e563420d8e7c726a497aae3b" } }, { "基本用法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e997119723444738a53afac9f388ec9a" } }, { "decorator": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5dc21f6dba4f4380a0be2e3464ea827d" } }, { "继承与封装": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dbbbea13cb3f4341a3d26eba8ea26c15" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8b3fd49df123402d9692cea2af5035e3" } }, { @@ -6677,22 +9746,34 @@ { "特点": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-35f60092ff5d4fc68d916181bfa3d035" } }, { "export与import": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1de867a300a044cc98ebd75feabe6eb1" } }, { "复合使用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-49ef2229372948fb977827005dfc7d58" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-350ddf42dd284611bff450cfc840571b" } }, { @@ -6702,91 +9783,133 @@ { "Promise对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5583204e7f5e488bb599f6388406fe0b" } }, { "Generator函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3148d62fa31143fe83e8cb1b8c14e73d" } }, { "async函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-56d650c3b4304fd297351423725f0565" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f2de2e4fa20c463b830455e7b5e6b731" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c711ee8aef7e44b9a6e7aa7bced92542" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "JS编译": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-7227699797ec48edbf1bc17653a5641b", "keywords": [], "children": [ { "babel": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3ab9766b3ef1420184cc67fad7f59d48" } }, { "tsc": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cfa7c1e91884428084b636352e21b228" } }, { "esbuild": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3e4c2d6d1bb449dfa92c6becff668f01" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "JavaScirpt引擎": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-65ef046d0e1c439d8e1618128f1ffde5", "keywords": [], "children": [ { "V8": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5107f9d4ca0041ad9bcac60b0a7e272b" } }, { "SpiderMonkey": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-205a333a39f74dda8d387bbaac108e5b" } }, { "JavaScriptCore": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bfdb0a9987bd40a3a6bac80634076b08" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "TypeScript": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-f357f138a0ed4fbe98403bb0840a836e", "keywords": [], "children": [ { "TypeScript简介": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e7956773964b4af0928733a8e9ded70b" } }, { @@ -6800,16 +9923,25 @@ { "变量名": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1a68f7b3f7de47908ff63e0a651a32af" } }, { "变量声明": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8dcf6c2b7562452c9fec5d1ae3dd12dd" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-411d0f7393e94f40826721263dafe992" } }, { @@ -6819,16 +9951,25 @@ { "单行注释与多行注释": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f06ee2f6348c4bfc93d80274b464bae4" } }, { "区域注释": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dc10ac7894e4400ca8d3a4d8c6bddb78" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9f0823524e304556a3285d01e5674333" } }, { @@ -6838,46 +9979,70 @@ { "Undefined": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-47c99a25977c4e54a2962c54fd297d98" } }, { "Null": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1e1e2495d18b49748b00016db54362e6" } }, { "Boolean": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-43ea53749ec44888a42bb9cdd45201eb" } }, { "String": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-603f2392f46645688da9d0814dda7b78" } }, { "Number": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-df5017e004584fbd95a9ed9de2722570" } }, { "Symbol": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-52769bfa66074ac2b34f3db2820ccfe7" } }, { "Object": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-782bc0bc3c9949de8d5654caa5bf8360" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ace59daa05024d398a97261da2a38888" } }, { @@ -6887,34 +10052,52 @@ { "Null字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-50be397e7da04cd5a3f07f526ca1d544" } }, { "Boolean字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-23531e720d304c2aa236c1e2fdec8785" } }, { "Number字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-020be70542eb49b3af1e3e040ad6fe70" } }, { "字符串字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-12624c399a564a13b6b36a675f15d5a3" } }, { "模板字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-54c401b3ad2e433385a91ba47b2a0247" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-80d322217ca04ce590b1ae78f85d7335" } }, { @@ -6924,16 +10107,25 @@ { "对象字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-af23a65eb6c24b8a8e6f51b29027ad71" } }, { "原型对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0b72c48b34da4c148758e2eeec630655" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2c87b2f122c8453ba7a1c55f036af0d3" } }, { @@ -6943,16 +10135,25 @@ { "数组字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5648010544a942c1a17077a09ea359e8" } }, { "数组中的元素": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-81525b7f678543ea9c70949373d6e305" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ae5d71882d0247b4a57c898547332d97" } }, { @@ -6962,25 +10163,40 @@ { "函数声明": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c38be7aa2b7b41be8a2e1cb858faf3b7" } }, { "函数表达式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b10309f7937a4bf0bc35d95990365d4d" } }, { "箭头函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1a3fa757b4fd4b57bd5c38f1390b6194" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6fda272cc29248a39065c57198791f31" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6264486123714ddcb299d8aab54a2214" } }, { @@ -6994,16 +10210,25 @@ { "创建BigInt": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d14a05ce194c4d6da777ba672b294c57" } }, { "BigInt与Number": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8cc95374e6d64da4925461539d566dc2" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8765ea08a275489b9b0ae6d1a73d1ef0" } }, { @@ -7013,22 +10238,34 @@ { "展开数组字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-08dc7ef007784d32b942997d26d5c821" } }, { "展开对象字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8774873b14ed4d7f9fcc8e7f9636a563" } }, { "展开函数参数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-059473dd8ad1494badec17cca3b01f56" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f48d305ee8de4e5ba450752210741b55" } }, { @@ -7038,16 +10275,25 @@ { "数组解构": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b2405f5c52aa4caeae4fad5345a57a18" } }, { "对象解构": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-15843cbaa4a84fe5a34c8fe234d874ca" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b0af6a956504445ba9acb631fd54aa7c" } }, { @@ -7057,25 +10303,40 @@ { "基础语法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e423a77f10f543a8b17ab860477443c8" } }, { "短路求值": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5641153fdd094a35849ef7afbb56a9a9" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2ccdf6744a9444f9b9591dc2e0e0a015" } }, { "空值合并运算符": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e766b9cd7a484a788fc8c025d1009d32" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a715434976a94dd0ae79c09826c7d0f5" } }, { @@ -7085,7 +10346,10 @@ { "类型注解": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a4dea383c7e54920bb8eda8c11bf29ca" } }, { @@ -7095,16 +10359,25 @@ { "非严格类型检查": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-301369d3d5104a949e0268841b83d79b" } }, { "严格类型检查": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3e852cfa3d564d7599dee9e04d39c10b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-78bdf9236d22423a8178882f837c3b0b" } }, { @@ -7114,46 +10387,70 @@ { "boolean": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bc2af44ea9624286a2a73c0d816dfb2b" } }, { "string": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c24feb5ae0294e58afe6edc5bb3c1564" } }, { "number": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b74d1538cf0741d695bc40f2a2da7df6" } }, { "bigint": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aac967b370c041b08ad41322ab5c1375" } }, { "symbol与unique symbol": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b71c1725ad874ce4ac2b3b3ae0712b87" } }, { "Nullable": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2c7dadf172a44d2da836137871dc62aa" } }, { "void": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a0405c0be06a41e4b0ba1f3146210368" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-58aef0e5d6934a76a8a112e1598ca900" } }, { @@ -7163,46 +10460,70 @@ { "数值型枚举": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6d30b3bd2f794427ae5d99a9d148bb88" } }, { "字符串枚举": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-35e22b54b645449fb10eab13099f39f4" } }, { "异构型枚举": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d224d9cd3c62407bbce8f2a0a21b2fad" } }, { "枚举成员映射": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b7227c1350b94966afdf366f313dec12" } }, { "常量枚举成员与计算枚举成员": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-11e4609b673d4c91bf71f9779126b4ce" } }, { "联合枚举类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aaf8b552566543ed9505d400dfcf50c7" } }, { "const枚举类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-67780b3ed7c344d28bcc3ccb4fc65b8d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-69b50cb489f24d788e468765fdaf9107" } }, { @@ -7212,34 +10533,52 @@ { "boolean字面量类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-409585a3afc84cca87d34e8b0f1a020b" } }, { "string字面量类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bd38fe17a1d04137be9e3d0dbd4d3009" } }, { "数字字面量类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5165ac7b46734342b0356e6c5389cdea" } }, { "枚举成员字面量类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-03bd3f68cb6e474686f221f5ed1a374a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b3c4c994f7e149cc9daca44553374d9a" } }, { "单元类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a46d5d252a7e460aa4dae640400c792c" } }, { @@ -7249,22 +10588,34 @@ { "any": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-28ab72ec64d64175b5a9f5508c981093" } }, { "unknown": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-046a6654fb6844d7a3f761f96d7aab6c" } }, { "小结": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dcc7c83391df48db9a9d818d1fb94402" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c00df411cbbc4e09a35b56fe943487b6" } }, { @@ -7274,16 +10625,25 @@ { "never": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8cfd36a696ed4f649786d70d28b1670e" } }, { "应用场景": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8663744a4509407cbb7500aba701eff3" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0c60e2d13ae14108a3599ce020a5d3c0" } }, { @@ -7293,22 +10653,34 @@ { "数组类型定义": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-389071644ef0416ab3d3ad853644c001" } }, { "数组元素类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b7193a024dae4207ab914bb08701e982" } }, { "只读数组": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e0c9b41d64a64a578006283d11713639" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-17e58ec97e974684ac0991b2c0dd5c4c" } }, { @@ -7318,46 +10690,70 @@ { "元组的定义": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-55864d0a25074391b30a42f365f5d258" } }, { "只读元组": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5d601e343d564b51857193a88acf9522" } }, { "访问元组中的元素": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ca8c90f0df3a467b8cfd4d09c8faecd5" } }, { "元组类型中的可选元素": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-87387c3510ae40458e968beded0cf018" } }, { "元组类型中的剩余元素": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ee7d45676c134bd8b4ad7af419b5a0d5" } }, { "元组的长度": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-408c728491cb459bb550a54f139899ef" } }, { "元组类型与数组类型的兼容性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a5f85269bcc348e1861ce3a8de24769f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-337f70d4539546c9a81bd90240121c65" } }, { @@ -7367,34 +10763,52 @@ { "Object": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-676153820f6842c89bb672b11202d2e6" } }, { "object": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7f194be9e182421593d78c53d86be6bb" } }, { "对象类型字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-af56c9f9dc1e42b69124e1712288a4d5" } }, { "弱类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-58851560e1454641a35628816621272c" } }, { "多余属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-df1e27180aa14f19867264f989e392cb" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e5e217a5f90e4a28a20fbb14a4336300" } }, { @@ -7404,82 +10818,124 @@ { "常规参数类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-de2c06db41ba4554b0571f939ee90325" } }, { "可选参数类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-561c0cf2a4b342dcaa97c1c52bbcbeab" } }, { "默认参数类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2cbf0090bfd44650b485823493bcd4e9" } }, { "剩余参数类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-db75c463eb5d481aa05ad1c98425ebd5" } }, { "解构参数类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c9f1e2593ce448b98e1e5916b5db088d" } }, { "返回值类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b78d9323c1804ff49d64fd0eebb9fc3b" } }, { "函数类型字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5656bf1a4bf946869f8c05a258700edc" } }, { "调用签名": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0521c7d06e214a4fac18fce13cd47a19" } }, { "构造函数类型字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e6f89a18d79f4ed69e5977eec476ae2a" } }, { "构造签名": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-79ca110ddc2c4e33bb652b85586304a4" } }, { "调用签名与构造签名": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f7e81967722e4cea992a425b751edbb2" } }, { "重载函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fb39ad5141ba42a2909e2df23e95f118" } }, { "函数中this值的类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1858101e3b014da4a2d5223015357f1a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fa49430529d949bebf33750d10884cc6" } }, { @@ -7489,58 +10945,88 @@ { "接口声明": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-169fbbfe1bf44f4e83fdf6f9d59c5bef" } }, { "属性签名": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-87c89cc7896140e8a1c79a09a4a03e6f" } }, { "调用签名": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fd46c78078c2478d8aead526be075466" } }, { "构造签名": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0628217ff6914e0cb5177a0f064213e4" } }, { "方法签名": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ae5d84f702cd474b92c098bdb17fa1aa" } }, { "索引签名": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2375756db3324be781ea13ade6b436a9" } }, { "可选属性与方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-78f470d8a970416ebe5b9152689146d3" } }, { "只读属性与方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-41a18af2b6154294b1b9e5561f7400f4" } }, { "接口的继承": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-eb0219b06e07410e840332bfc8de35fc" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8ffab20025d746e797bbbd047df1e23f" } }, { @@ -7550,22 +11036,34 @@ { "类型别名声明": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8dda105b03bc41bdbe82fbddfc960c44" } }, { "递归的类型别名": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-39c0f9bffe694add909216624e62527f" } }, { "类型别名与接口": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b0242c615e1c444cbe05c1d4f41a0703" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f6646c843b504adaa96f50d74fb2fcc9" } }, { @@ -7575,91 +11073,139 @@ { "类的定义": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6215252248e74eeebe838e8dfbfa9650" } }, { "成员变量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2be5865afcf64643bcf1d8d8a738df1c" } }, { "成员函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5155881813eb4fd38fa01e7a1daefa33" } }, { "成员存取器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f3a01c6225704e35be82ff1a4321c3fd" } }, { "索引成员": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d16987461c604f6a8f7bf575170ddf8e" } }, { "成员可访问性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-98d54745f4384c07bcc30f3746134098" } }, { "构造函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7c7115bd63554c039f2d7fb953ad6e97" } }, { "参数成员": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7bd7a477966b4d7ca1b114266aa527a5" } }, { "继承": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-319d00efe0024c59b675acb927049b16" } }, { "实现接口": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5467b7d052954db481e3a6ab78407ba5" } }, { "静态成员": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0df82554e854466b9c54b863177cc982" } }, { "抽象类和抽象成员": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f939fcb78c434f569c1cea39680b3f87" } }, { "this类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-70fa5d751ef94836bd800bd72e3c26b7" } }, { "类类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-14344b2b1d03417d84d94cb221658a3f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7b30e16b86c24b1da85613fd59aa44df" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2931a9eb272b4469aaf4af2588015d92" } }, { @@ -7673,58 +11219,88 @@ { "泛型简介": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dfb16eba062f4f19ab112b7d388995dc" } }, { "形式类型参数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-501e5da44eea4f4790457fb4134eeb58" } }, { "实际类型参数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d57cf903e9e24400afa47e2db76a9162" } }, { "泛型约束": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d3477eaa9a9b4913be99adb83439e5ce" } }, { "泛型函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8a1283b23b1f478885e07d21b0498cc3" } }, { "泛型接口": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-84f599b0f47242a19c13260937b144cd" } }, { "泛型类型别名": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-48968d3f7a014e71a889c881115928cd" } }, { "泛型类": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b4139df68cfa42fbb409c9fd1329b5e0" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7ca4ada65d2d4bbd94be290085cb25c0" } }, { "局部类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-72647591dd1243c9aa8fee8da7acd346" } }, { @@ -7734,16 +11310,25 @@ { "联合类型字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-06097792c5f242e99a2b74b28fd91fb0" } }, { "联合类型的类型成员": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0d9cbd6b96dd48fbaf6655998719fc5c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f3996667334043f09664a98da1cdb218" } }, { @@ -7753,22 +11338,34 @@ { "交叉类型字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2554dad82f78423f88c83d520b7577a8" } }, { "交叉类型的类型成员": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-207325f7c58c44d18bcb21a5070de2c3" } }, { "交叉类型与联合类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-13935ce520d543f089658df7b9a9702e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a113d757de414221a4eca47f68b05764" } }, { @@ -7778,22 +11375,34 @@ { "索引类型查询": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6707d51c1b1948f7a67531604060001f" } }, { "索引访问类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cfb6e503481c43cb9ee1f95e8d6496e2" } }, { "索引类型的应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3931d10cf1ec4ba0980d56fb12e54d96" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cffd3b33d0db48339946af51da6cee68" } }, { @@ -7803,28 +11412,43 @@ { "映射对象类型声明": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-df83bfb7894e47beb8b0d801ec0d9216" } }, { "映射对象类型解析": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d45a9a14f2d44959864a644a2cc9364f" } }, { "映射对象类型应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-525e84ce8b174b9fb19f9b5cd8cde459" } }, { "同态映射对象类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dbc3f305f6654ab09665fac39403bec2" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-21bb9bbd94054cc4be9ddfa976ace5f6" } }, { @@ -7834,22 +11458,34 @@ { "条件类型的定义": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1fe40f8353e94037b14b17995e069abd" } }, { "分布式条件类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c1d2e23f77d249d6b0a1e46df9597743" } }, { "infer关键字": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e57e73c586b14614aa1352ce066bc122" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6ab30d1be4074167ab8dab0cd5ab9b8e" } }, { @@ -7859,106 +11495,160 @@ { "Partial": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-84dc343c0b174358b057f62ee6186faf" } }, { "Required": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1042696e02aa45f2b9ef85dbcc7cc3dc" } }, { "Readonly": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c6c0721f2e454cda993f363f2b4750c8" } }, { "Record": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8a9e0571f6fc477dbc514199e746513b" } }, { "Pick": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2d1587d18909459192f15fc3aae9e3fe" } }, { "Omit": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-32f8691d3bbf48a0b74be7ed1c0f2759" } }, { "Exclude": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d0ff6557b7ea496eb46a2e5c13992b5b" } }, { "Extract": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-34a862a377414565bbf90c6a987d7f5f" } }, { "NonNullable": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-292211c87bff40f29f319a745c6efc80" } }, { "Parameters": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-51fef138413441b5971a24abc1f692bf" } }, { "ConstructorParameters": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d329ce0f3e9243278e5d88b6c7d19cfe" } }, { "ReturnType": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4ffe972b763e4e13a4cb156ca28e8466" } }, { "InstanceType": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8fd23c39a3b84f57ad001b802c7f8d27" } }, { "ThisParameterType": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7bea1b2d9abc419fbb9c16eeb3bac44c" } }, { "OmitThisParameter": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6355ca6ee0094e5a92d9b987e07cb0d3" } }, { "ThisType": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-65751716bcce4d5ba16a2ca346ebd69f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b58fcf091ae5455190eb670b7e0788a9" } }, { "类型查询": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-27f9ba9c5caf4761aa079e5ad4d2b7ef" } }, { @@ -7968,34 +11658,52 @@ { "类型断言": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aadcbbc3401846b7a833bd5a9bfc28df" } }, { "as T类型断言": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-10ab618274e84453bd38f7959ae4435b" } }, { "类型断言的约束": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1014f3f875b84a78be2690f5b5cc57be" } }, { "const类型断言": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d4cadb664e1f4db99716f9d72216b1e3" } }, { "!类型断言": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-31e5299c351f45f0894f404a0658185f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-36da1c967441495d878bf377cece031d" } }, { @@ -8005,37 +11713,58 @@ { "类型守卫": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f1d4ecd879394f1788754f9500eccc22" } }, { "可辨识联合类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-275ecf2fa44142f0978318ad5705626c" } }, { "赋值语句分析": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8bc082479b784300a1f0165e20823638" } }, { "基于控制流的类型分析": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c7d75e00052844ca82e329572779b310" } }, { "断言函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7fe0c05e0dc54be7a0c086aaba3ee08e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bb30bdf14dfb429ea8bcecc2acee61d5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a6beeddf41d546fd9ec66763c58c3b14" } }, { @@ -8049,64 +11778,97 @@ { "类型系统可靠性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-05ae516df38743b99b1ad7006f35b334" } }, { "子类型的基本性质": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7856919c70b04895a68459eea5e48914" } }, { "&端类型与尾端类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c090a6e7855e4f008ad19d134748a9b5" } }, { "原始类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-968c0a646874428ab4d1c437c79f63c4" } }, { "函数类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8fe2e3d3a6b14bb2b07c764b29a9bf69" } }, { "对象类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dce237f353294c32991918297be77e29" } }, { "泛型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-923e1f74e596437aa30d57451499e69a" } }, { "联合类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4ee8fa043f1c4fb59cf01128b50f39f5" } }, { "交叉类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-57e58b65576c485e9ab7584db842e8db" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1174208cec0d4519b6c9d2fa0bc74ce2" } }, { "赋值兼容性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-16e15c1dbdbd42528fa7a66e622cbf14" } }, { @@ -8116,16 +11878,25 @@ { "常规类型推断": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f90730cc7c4142c489324722da71284d" } }, { "按上下文归类": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9c29c59c3eaf4edfb1bf6e4d75667e62" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-db04a9c01df44ffb99fe9f96775af6b9" } }, { @@ -8135,16 +11906,25 @@ { "常规类型放宽": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cfefa899c1384d35a3cec538b28277fa" } }, { "字面量类型放宽": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-01a8bf4afb5a4b6c8a22d7a264ce17c0" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5d5e4c2927c64540a10f98bada40409a" } }, { @@ -8154,34 +11934,52 @@ { "命名空间声明": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1ce881670d874af0a6238b7a4ec1f5e3" } }, { "导出命名空间内的声明": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6a2468ec9f98429e87b88256aca72bdb" } }, { "别名导入声明": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3db8b583e69f47f9924109d000931b36" } }, { "在多文件中使用命名空间": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3bd4be9d4e684bbcbbe8a3b181aa026d" } }, { "小结": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-59f26387f54044d89f9336106673eaa5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-458ea427d91841039838e25838de3375" } }, { @@ -8191,52 +11989,79 @@ { "模块简史": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-200cb2383b5444239875029c0911c31a" } }, { "ECMAScript模块": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-540da9f87e6348669540536c7d58b13f" } }, { "模块导出": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2ec2ebd14eb44c1c9332f92a1e619d0c" } }, { "模块导入": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7391ca47e32140e48b3c9fad772fec0c" } }, { "重命名模块导入和导出": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1769afeb3db5454d884b2488bf34422d" } }, { "针对类型的模块导入与导出 280": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-12c619b6d7554788a37bc7df912e84b2" } }, { "动态模块导入": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ad85c0b41c6341b5a760fe4f4231fb71" } }, { "--module": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-961523f7db3e4caa960dd4fb5a56b4d0" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b259c4f6ac9e4b13aace0f1d24e930e8" } }, { @@ -8246,16 +12071,25 @@ { "外部类型声明": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b43a21b705d64e7ca8636c0c3a421100" } }, { "外部模块声明": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1d070a1020844979be4058fca8bcac4b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-02e5ec3dc579488aba642339f78d6ad0" } }, { @@ -8265,22 +12099,34 @@ { "语言内置的声明文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a88dc884953248b4882a2465b74a13d0" } }, { "第三方声明文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5daa3ffba27b40f08dd0d72f2282ec37" } }, { "自定义声明文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-95b86a799f84466898ca75787c6b61cf" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-acd827772f324a6ea4415eea9306dd54" } }, { @@ -8290,64 +12136,97 @@ { "相对模块导入": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8726d5c3aaaf4e1ba622cf55229a8ca6" } }, { "非相对模块导入": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bd6c129acfdf49a3ab345b52976a2d67" } }, { "模块解析策略": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ea626da30f2540c8a08d0ef95df21f34" } }, { "模块解析策略之Classic": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8a6aefb3ce19416491479afd90403dba" } }, { "模块解析策略之Node": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e2c029b9fdc049aaabcb4becd6d3c908" } }, { "--baseUrl": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-549df601cbaf474d8e140a01a60a2889" } }, { "paths": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e4a6bc160d1346b581d9429694e95cd8" } }, { "rootDirs": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-89ac4e5cd9da4b3bb5f89e42134d0a0f" } }, { "导入外部模块声明": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e1d77cd8d5ea4c5bbbf9c5da5b1754fe" } }, { "--traceResolution": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fd581b98f7af4068bb27406b657d4635" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ce831b5538ce44cb8dc2c06d5f045515" } }, { @@ -8357,43 +12236,67 @@ { "接口声明合并": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0ed95b75beda46aeac94c83b7b9a3c22" } }, { "枚举声明合并": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9de9af67ccc74042a178c5e0ebef422e" } }, { "类声明合并": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c5f22c9c6c5a4417838f6022c7e8bf5a" } }, { "命名空间声明合并": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ce52d171c2104ab4ab18b6e68f315f6d" } }, { "扩充模块声明": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0668ca56bc4e4939b30f7ad995738f52" } }, { "扩充全局声明": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-17d44d3a9a7448ad8d2758b91c842212" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1cf9a1d2c6cd4debb562cc05707346e9" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-41a8cf7ea5774db686ec067390d66c7b" } }, { @@ -8407,16 +12310,25 @@ { "安装编译器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cab9bd514dab4752950560c88e396588" } }, { "编译程序": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-52d2611db78c4dc58eb5269cdf23865c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d3b1a6748ae44b08b47603e7b35f8c0d" } }, { @@ -8426,28 +12338,43 @@ { "编译选项风格": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f5448cd3445942ecbb3d57bb8e092379" } }, { "使用编译选项": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4e439c0a08964fbbb4f157b51b33c87c" } }, { "严格类型检查": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7819c043dcd34592993b4a8dbc0b41b6" } }, { "编译选项列表": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4ee692b6d1954be5badd3af50b083b7f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9add80f96a9242b4855f0bdd74d6de90" } }, { @@ -8457,34 +12384,52 @@ { "使用配置文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-62daccdc140345ce9eebb6a2267a5ca3" } }, { "编译选项列表": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4fc0a9e43cb84c0fb67654db73d7eeba" } }, { "编译文件列表": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3e46ed404fde4fbbb00de0dde05119f6" } }, { "声明文件列表": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ac533fc93f614d05b7df00fda8e78529" } }, { "继承配置文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-31bb43c9990f4fb388bf491291383c08" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4b9b0cf178b74ff49d2d1ff202c71126" } }, { @@ -8494,28 +12439,43 @@ { "使用工程引用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-057db16834e04ff6830a5c9850ec6ec1" } }, { "工程引用示例": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dad7d4311507487385b7c5ecd246c2eb" } }, { "--build": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e383493894534057870c2e269c736815" } }, { "solution模式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2ed5bdc88a73498aa50c194f6979ce92" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f9302283b7ed453198c9671cf6b57c03" } }, { @@ -8525,53 +12485,78 @@ { "编译": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-181b74a4e51a4eb2b483f6057475462d" } }, { "类型检查": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9e43857b38f743a3a2384ebd7b8372c1" } }, { "JSDoc与类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1aca117d008a456491cfdb1bf59a2844" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b3d838ea5cf64affb9ba2cd128140124" } }, { "三斜线指令": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f0d2e02682a24cf9a4470ede38a5bb23" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1473fdcbcb5b408fb36a5101109df117" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "node.js": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-871d3f963d684072af46f7086e734745", "keywords": [], "children": [ { "Node简介": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-11f796e121c9405ba6976265e4d47a55", "keywords": [], "children": [ { "Node的诞生历程": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-99f1f331f8734a5984b63d95ce74ded2" } }, { @@ -8581,16 +12566,25 @@ { "为什么是JavaScript": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-572f906b9cba46ddb221a20f12181693" } }, { "为什么叫Node": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5d08a56bfc274a0182b6842cbf9ef52f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f426e04d415f4213aaec77928466cd49" } }, { @@ -8600,28 +12594,43 @@ { "异步IO": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e50f8f7c6af547679430766f06b7d27c" } }, { "事件与回调函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-219cbaa620fc44058d602fd9e524d8c0" } }, { "单线程": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-25ee8998dd124be3964d6650749b478a" } }, { "跨平台": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3fe284085f20459ea471c2c18af1dac3" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6cc85db9311a4cf49be67940f7fa5f99" } }, { @@ -8631,36 +12640,53 @@ { "IO密集型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b30f3e634477403783785ce573bf9a2e" } }, { "是否不擅长CPU密集型业务": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-942b01867ec9480983e42060a992a6c6" } }, { "与遗留系统和平共处": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-24a54c8ab4e243b59c56bb4b2efb318a" } }, { "分布式应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-63657a9cb8bd4b44bb33d73d39c5cd9c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-de8822466ad64ee1be04e5eb336555c2" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "模块机制": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-91d9315d38364c86ad8c0b9f81ba33de", "keywords": [], "children": [ { @@ -8670,16 +12696,25 @@ { "CommonJS的出发点": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-41697246b6404901abc540de5570d956" } }, { "CommonJS的模块规范": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d753b0d809d640738fe3667fa31cc3cb" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d5b1e8255051430bafa1d00bc68a7609" } }, { @@ -8689,22 +12724,34 @@ { "优先从缓存加载": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6ad9696694b84ba6b1c774787f6150c0" } }, { "路径分析和文件定位": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-55294d56fad843b38835ea01a44caf66" } }, { "模块编译": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d2000b3680d84f6c981322e610c3db0a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cb555afe20804f0188b53f7ac2d755df" } }, { @@ -8714,28 +12761,43 @@ { "JavaScript核心模块的编译过程": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7c4230ac180a4ae3a73db397dacefd59" } }, { "C&C++核心模块的编译过程": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4cbd3dd2995b4ce094dd608b02c86da4" } }, { "核心模块的引入流程": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-27455e061e2843e595f3f22844a5c28c" } }, { "编写核心模块": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dba9f60c0d904b04b2ade1340878a4b6" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ef41b660107a46c6a54b7984bc308d8f" } }, { @@ -8745,34 +12807,52 @@ { "前提条件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f712bb48b47c47d2bcbea044614a519f" } }, { "C&C++扩展模块的编写": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4c505230158e4488b6421bfa6ec73efa" } }, { "C&C++扩展模块的编译": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4ec2283df77248788ea61b23d2fcc2c7" } }, { "C&C++扩展模块的加载": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-60cfbb5b9b434999ac90e40b9b50fa8c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-47b4786e359e4718b4f1a0dd61cfcdae" } }, { "模块调用栈": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a76aa5a4938d4e908ecce45fed851536" } }, { @@ -8782,34 +12862,52 @@ { "包结构": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ab2f1ad12a98474d8c3b5d65a30e27ed" } }, { "包描述文件与NPM": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8c765c15266a41f9aee2f98da90a0807" } }, { "NPM常用功能": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-27150556d84c4fe9b0707ed3d6f6b279" } }, { "局域NPM": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ae61b2eacbba49cb9d0e3772c39c2d88" } }, { "NPM潜在问题": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-79c675867e0842b2a63ec997a4b0081e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-df64ea9c3a1248be9822242d075d1152" } }, { @@ -8819,36 +12917,53 @@ { "模块的侧重点": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-09387959e8dd45d693cc7305fbedc203" } }, { "AMD规范": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8974e53608b0435ca016e6cb06738c90" } }, { "CMD规范": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6eedb3f713de4fd99408215bd935203d" } }, { "兼容多种模块规范": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2e44de4b56ac404b9510ca9e5dbeb1b6" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-486401ff5a824072b0434b14bcc7eb02" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "异步IO": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-f3a6a05e797b4bc79dff2c375618e4b3", "keywords": [], "children": [ { @@ -8858,16 +12973,25 @@ { "用户体验": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d295e573879749a4ab5b8de1a849cba3" } }, { "资源分配": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-60a22cef609b488c879275eae4acd7a2" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f1a484d2554c44e5a31ec8eeda8924da" } }, { @@ -8877,22 +13001,34 @@ { "异步IO与非阻塞IO": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8a61fa4962824f0d96cf4464db473f20" } }, { "理想的非阻塞异步IO": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-17c09f81ec54405da8884e7a3c074589" } }, { "现实的异步IO": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-db284d05a1034a4b85c7a5185eeecb13" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-de55341bbd2a4ba0885228f52b3dd8fb" } }, { @@ -8902,34 +13038,52 @@ { "事件循环": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-727d147cd95847f29f9e8d03fa99f44e" } }, { "观察者": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dc6507d729ec411285ee4a7ce369c211" } }, { "请求对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-86e2b7df5e004083a84ad06f0891c1c9" } }, { "执行回调": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-368d4e63746443048a525427785c2fd6" } }, { "小结": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-15396daa272b4cea9dee8e844e67db03" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3271fd2d46544dfaae1f0572e4ef3580" } }, { @@ -8939,36 +13093,53 @@ { "定时器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ab72a75d46ff4bddb1fbe9985ec9a7a2" } }, { "process.nextTick()": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3de625ea227546e1ab22c124fba116cb" } }, { "setImmediate()": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3c6c815b248a4e02882676eafafa5d70" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-15d8b225d6194c80b75672cbcf4734ef" } }, { "事件驱动与高性能服务器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-500a3d744afc485b9923d7e69934efdb" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "异步编程": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-41134110e01847ff9f5f2d71da206952", "keywords": [], "children": [ { @@ -8978,16 +13149,25 @@ { "高阶函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-27b70c2b066348dc83644c71dec886e6" } }, { "偏函数用法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4e820056385f42e3a00bc3510f94590b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-49ed29abba6e4c15938e2e6399f64e15" } }, { @@ -8997,16 +13177,25 @@ { "优势": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b5dd0f6523e442d78aa7fbc30da1a1eb" } }, { "难点": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-01b1930bfaed443f8f795d64db662383" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-84257a42b71e4314a2d2c7c2f673104f" } }, { @@ -9016,22 +13205,34 @@ { "事件发布 & 订阅模式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9a18507d55ff4ec58445104c56e7979d" } }, { "Promise & Deferred模式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8bb16f65e5ad4aa4b0d8b87a7668b730" } }, { "流程控制库": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-afe135a3eae247dead26be79f6eb1058" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-19c4be9f850249a3a12869d10b8e7aa7" } }, { @@ -9041,24 +13242,35 @@ { "bagpipe的解决方案": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-320abe64c33e4b2ca547ecc4cc62a2b6" } }, { "async的解决方案": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ff56c54fd8cd4f92ac71993c98a93f4f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d52f9a6dc0cc4a71b0f215e1409cdcd0" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "内存控制": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-745c885adb664d5082cffee120adb205", "keywords": [], "children": [ { @@ -9068,34 +13280,52 @@ { "Node与V8": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-585e004e83b54543a1e6d9eebfa14e5c" } }, { "V8的内存限制": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b5fdfe8426c74be7a87248e007e1ee94" } }, { "V8的对象分配": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5d8721bde2994cd0af703bb80d96dce7" } }, { "V8的垃圾回收机制": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-724c831ec39f4ffda4cd40a16a6f18b0" } }, { "查看垃圾回收日志": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8d43456193354f70b483969f66ff7144" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0f71c314256149419aa9d0639501e0ba" } }, { @@ -9105,22 +13335,34 @@ { "作用域": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a7e0619e04c04f92929eb12a9c913d03" } }, { "闭包": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ee76040a44f94060b61c84a1a3a84c6d" } }, { "小结": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-904ba3b8f00942979778803beac9e9cc" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fd6a6426ba004dffaeaf3ca6b647bc29" } }, { @@ -9130,22 +13372,34 @@ { "查看内存使用情况": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b504dbd9be294240818b6f01f8e920b8" } }, { "堆外内存": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2d05dba1e62f48cc80ac77fe75df10f6" } }, { "小结": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8e6b32c41c5d458f8168a74244f53fca" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8b2668e0c83c491b8766d148bdda9cb8" } }, { @@ -9155,16 +13409,25 @@ { "慎将内存当做缓存": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cf03e980154947a1a8147b4c64ad6e3a" } }, { "关注队列状态": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8eb4542df4a3426daedc64f9ffe0681e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-10334e0691374c168e9e96b7d9bf55e7" } }, { @@ -9174,36 +13437,53 @@ { "node-heapdump": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8286043f5320414493930ac7e38cd130" } }, { "node-memwatch": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9ab4af696af54cf9ba01160c13cd2b3d" } }, { "小结": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-297ae15ba0954d92a8a08b58d832969e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-00571387caee40f8a5f0bf854f1c52b8" } }, { "大内存应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5efff15951c4447f9c22a70716f24021" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "理解Buffer": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-2602917152434f86902cdf49ee646ee3", "keywords": [], "children": [ { @@ -9213,22 +13493,34 @@ { "模块结构": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fb123c932ee84af8a363512921d664e5" } }, { "Buffer对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-887e5723360c45b887d26ddb17a17382" } }, { "Buffer内存分配": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-22089e959be74799a992e51686ebcae7" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e10bb01905964ad1bbe9ca1ac26cd734" } }, { @@ -9238,22 +13530,34 @@ { "字符串转Buffer": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-930e335ac4ce4abbb3caca65358697ba" } }, { "Buffer转字符串": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8bd87e37d14e4af399192d7d12b48e54" } }, { "Buffer不支持的编码类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e6c2bdb2038c4d32901d0819d6c1d014" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-17a5e7f1bfef44179ec0aaf7579f91f3" } }, { @@ -9263,36 +13567,53 @@ { "乱码是如何产生的": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9b32729e7aef433f89509331e9339c40" } }, { "setEncoding()与string_decoder()": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dbe139b44d454568910def8c95d64bf3" } }, { "正确拼接Buffer": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-932bb87e1dc94fb5830bc2cbc36b3254" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f27ed0af9fc9404c857b9bed1a4c9a4d" } }, { "Buffer与性能": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-56f4d428ef8f4720b1ad5745e302f2f2" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "网络编程": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-b3336d4471944132b4e95b067f1f7da2", "keywords": [], "children": [ { @@ -9302,22 +13623,34 @@ { "TCP": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d3688c9505a94bebab2af825dcbeadbc" } }, { "创建TCP服务器端": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ebc5e170d99e4504a7ceb6d2f12f3c1a" } }, { "TCP服务的事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-abc9ec8ed4f4450ab705bf2600ebe125" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-543575e02a974930abee8131f4fe4c8a" } }, { @@ -9327,28 +13660,43 @@ { "创建UDP套接字": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-31b038bffc29466fb006f56cf157d43f" } }, { "创建UDP服务器端": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-da6797ebcf4f42d088e586f883ce6498" } }, { "创建UDP客户端": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d6d092e224024f698940691e5e994c45" } }, { "UDP套接字事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-adcbb676a002486da59f923fece3bccd" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b79badc62d77431e9480d58f2c7335f9" } }, { @@ -9358,22 +13706,34 @@ { "HTTP": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-40b583400b6a43cb8c215f7c77872094" } }, { "http模块": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b9622cca915048088099efebe081cde5" } }, { "HTTP客户端": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e9680660dd124bb7871aa2831b78f0de" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4a462a2ec71649bd9cdf17bcc91d7637" } }, { @@ -9383,22 +13743,34 @@ { "WebSocket握手": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-015a36bcf37a4080a7d0dcf98a4121f4" } }, { "WebSocket数据传输": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-36ae9c16452f4474b6909574ced9afd7" } }, { "小结": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-10d75ba58e974eddb4062e3fa366e305" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e1e4a42031784c0590c2aaab4f4c3609" } }, { @@ -9408,30 +13780,44 @@ { "TLS & SSL": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4bdc398e766f408881146460508ac32f" } }, { "TLS服务": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2302cdefe7464926bb70db9d4e74177f" } }, { "HTTPS服务": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-48e31aecd9e74055b256e0440909f758" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b49f2abd6e1f408392526546bd53fe70" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "构建Web应用": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-0e8c5a965186403aa3c070dc8022164c", "keywords": [], "children": [ { @@ -9441,46 +13827,70 @@ { "请求方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b5fb0b2395c94227b4c25964a764bba7" } }, { "路径解析": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-44319c00feb246d491f798e3ee2082be" } }, { "查询字符串": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-76777bd231584f729ce343611267d650" } }, { "Cookie": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3307b16f9d024a64887b73b86c7efe85" } }, { "Session": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e7ab165360ff4c8391d44389af28c081" } }, { "缓存": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aa597256a2f9406d8b4066871a8a809b" } }, { "Basic认证": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b2d88aa594464448a00d778e46d39799" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bff02245441349ae812ae184b4a7439b" } }, { @@ -9490,28 +13900,43 @@ { "表单数据": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5a5e137dd9004744965dd714c64c85a4" } }, { "其他格式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7346ca3846684cc083e5d7eac1f5b4dc" } }, { "附件上传": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5cb843e8bf364ca483119a41ebf4339e" } }, { "数据上传与安全": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6198c5b77c3942d38e8cb144758fca80" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-346d4cc5a4c8416da0d381700a83ad53" } }, { @@ -9521,22 +13946,34 @@ { "文件路径型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-959f9af3a2764d50aac3791e2ea5be8a" } }, { "MVC": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bcfbe58e15f54333966a2007f92f1310" } }, { "RESTful": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-af46ff36357444fa92ed65648451b080" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-87109c9d33d84ec08b42fa2563d61bd4" } }, { @@ -9546,22 +13983,34 @@ { "异常处理": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0d7600408b8a46f9b55f568288eb8cdd" } }, { "中间件与性能": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-92a16e6b2cb44fda86d29cd87cbb5863" } }, { "小结": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-358ec36db15344a8bfd9cb20eb765d3e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7a4df4165c7c4b9292c100014d3b6096" } }, { @@ -9571,93 +14020,128 @@ { "内容响应": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-267df8d6e15a4f05997050fa396de9c0" } }, { "视图渲染": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0f8f24b60e3244eeb2e03a44abdd3bd1" } }, { "模板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ee39677ec8894d6b8880e3ba51d572c9" } }, { "Bigpipe": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-395ada0096bf40c79edc9eb91ea3f0c1" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1ea3e794192b4435bf90b82742fda7b1" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "包管理器": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-85c0bcab48d74ca294f517d10f9364cf", "keywords": [], "children": [ { "npm": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-4dc3af0cf7424168a506b1398eedb4a3", "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [] } }, { "yarn": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-9f8f23e75f2249a8bb62467951c607eb", "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [] } }, { "nvm": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-de7ddf7a4d9e4aacbf946a16f7d84201", "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "构建工具": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-3c5161902471421abf934854d615df51", "keywords": [], "children": [ { "任务运行式": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-a3d729190e7c4330a6f5d9f975086fe3", "keywords": [], "children": [ { "gulp": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6309f50cb267431bab3b42288dff90f4" } }, { "npm脚本": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-75baa5257d4144899f5422bdc01013e2" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "模块捆扎式": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-ee27a3d098a147bf948916e533618808", "keywords": [], "children": [ { @@ -9667,19 +14151,28 @@ { "安装": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9fdffdd2e9be49c387dc17550db67f53" } }, { "基本使用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fe16bfb6367e42728745fc479b41bfe7" } }, { "命令行": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-562af782de434b86b2a1628598b356ec" } }, { @@ -9689,103 +14182,151 @@ { "context": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ef68a4621eff45d5a9c68b6c70644dd3" } }, { "entry": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-92beb4c66ad44b2081260c2272c147dd" } }, { "output": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cf5711362a564323942ba0c9996ee743" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2f4a971807604ac2a6196ae6d5457caa" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f2b05cc841ca403ea4a72d49f9184143" } }, { "rollup": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-13fd384625e14cfe8db729c715046553" } }, { "parel": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1f2b7a786b9d4702a71fa665ed73f75c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "CSS 编译": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-0c40cde5cd0d4a79b7d39d2ec6ab90ae", "keywords": [], "children": [ { "Sass": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-b85dbd5f80ac49cc918684ef1e11b623", "keywords": [], "children": [ { "安装": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2dc55e2ef4d748d992cef9d46da86377" } }, { "变量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4516c6881b934c87ad646b7800e530c9" } }, { "嵌套规则与属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d47ea2758f724a7c9188c470685fd325" } }, { "@import与Partials": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4f77034c230b45e592272f922bade431" } }, { "@minxin与@include": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5cf48da78c2b4b899d368256b93149a1" } }, { "@extend与继承": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-60413e30fae54f3da717fb6b56b793b5" } }, { "函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6282034823cd434e9182bed737b4d92d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "Less": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-a47ca164122148a0a6f467562c947c99", "keywords": [], "children": [ { @@ -9795,40 +14336,61 @@ { "安装": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-776d997827a84be5a5962115526392f6" } }, { "命令行用法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1fcdd3cf0fe84c19aeb4d23fdffe11e9" } }, { "配置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f02257aad76d4f26a75fc81f838ad306" } }, { "第三方工具": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-11d8b6297903444cbf4e75b43839b74c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5f6b904e8eb54dd8b71f2889a56e7c5b" } }, { "Rhino命令行": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-58a06d182f604b9ea240f215a2d5d16e" } }, { "客户端用法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ecb03b3b5a0a4a2580414bf9e4de536f" } }, { @@ -9838,194 +14400,288 @@ { "浏览器下载": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2dd2c8b4c81b4e87b62ff6f85f9d230d" } }, { "Less CDN": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8f28322bd662410ea4c0a4e9150574d7" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3e8b59d9218849688954023ccf294118" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "Stylus": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-815a36e74be3457ebcafbe3d1fa47722", "keywords": [], "children": [ { "安装": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-13bc629b1dac4ad094f537cc2eb5f38d" } }, { "特征": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3fd988f7a007430fb562409fbef35dd2" } }, { "选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3902cb76170e4236b3fc172bd7e44c8e" } }, { "变量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2f2b364c5d144b62ae228352fe367f81" } }, { "插值": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-260ec6fbd57f4c28b2aae30e5c97911b" } }, { "运算符": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4707940e12e549b1b385beafb8b99241" } }, { "混合书写": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4af90c34a9244117b46e255e341621a5" } }, { "函数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c41c26d599664963a9c8a2454b69ac7b" } }, { "关键字参数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fa5f2f38801845f28c52bf9c56f23ba6" } }, { "内置方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-582b0dd5b7e848219f18e51b6c42f998" } }, { "其他参数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-661ec41ef60d46539c563be457f8f331" } }, { "注释": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-eaea7d978f884f3b95eeb48bea4f453a" } }, { "迭代": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9fb45b75e4534e36a8d6802bf5016f40" } }, { "@import": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-51064386505a458bba04991b13a1c8ad" } }, { "@media": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5d0c8d458f1242a0aecd8e62adf2588c" } }, { "@font-face": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f6ae8f1f5d2b448eaf8a948c6cf25ca3" } }, { "@keyframes": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e577617eab1248958f047b570484adca" } }, { "@extend": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-565d65b78123421994d498da73517151" } }, { "url": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e126eddee10241a0a0437d87feea1223" } }, { "CSS字面量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-565a3b8d64114a5ebae6431a2397c2dc" } }, { "CSS样式解析": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b4e47b4b55424150b4b942ba9774ab8b" } }, { "字符转码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6765d06222c44be8aefcf9043ad3876a" } }, { "可执行性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-50d194e8d73a43f8b28dfae48d600b6d" } }, { "错误报告": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b5eab07f02ae4ba1ae1dffa65682fcef" } }, { "连接中间件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-49a10026b3914c91bd5bc1d4927a3d09" } }, { "自检API": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0bc5bf0623534a06a6b3b48ab296336b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "PostCSS": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-99e43ec1874c4d9e92c4b6dbd89abded", "keywords": [], "children": [ { "PostCSS runner": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c5ef2c48a61e4e6cbf9360a8a1a40b91" } }, { @@ -10035,22 +14691,34 @@ { "语法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-eabddf809ff3406590beae51a7758832" } }, { "解析器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a84243c5f7664c82babaa1e8eed9fa22" } }, { "字符串生成器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-159c3b9aa7234242bdf4be54c29df2cf" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c936427435ef4398a1f86146a9ee3927" } }, { @@ -10060,140 +14728,200 @@ { "控制": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-81467cd87a6c4d158560c1d43aa96590" } }, { "打包": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0250b32c7f2741a5902d592426102555" } }, { "面向未来的CSS语法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b2a4a8655dd64abfb42edb9fc6fdf8a3" } }, { "向下兼容": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-92007fe4709d48a8b46f0cc00be12d87" } }, { "语言扩展": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1a469992a7434237a3b2ce98b5a99b3d" } }, { "颜色": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-187819aadf8e4b2aa54cfd488f9d5668" } }, { "图片与字体": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-db85e68757944806967ab686da71786c" } }, { "网格": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6a33f7b7c80f46f5b0604b08beb7d7a9" } }, { "优化": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7955b4449d964f1fb534a7ce01f97223" } }, { "快捷工具": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-18c5af02d69d4cf5a1aeee61de926335" } }, { "其他": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fd8c36ed0fa14ab0aabfb71607fc8169" } }, { "分析": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cd81fd4ed7f94174a2b4e60cba87690c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-89cc0f14097148f483ccd8ce9cc29bb1" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "web安全": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-6025adea26f24243b83608408f03994a", "keywords": [], "children": [ { "https": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-cbcafdaad3a64392b06730f7e080dbce", "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [] } }, { "CORS": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-2ccf205bdaf24ef3b0ff4e1d52e56b8d", "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [] } }, { "常见web攻击技术": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-ff658d0bc6cc46ef9f63c35cd106d866", "keywords": [], "children": [ { "XSS(Cross-Site Scripting,跨站脚本攻击)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-51efed50f2df44dfa99441eefe9d5268" } }, { "SQL注入攻击": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d065914fd3a74986a75877a9477adc78" } }, { "CSRFCross-Site Request Forgeries,跨站点请求伪造)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0cd2b90c84e5497ab5f477c196f02bd8" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "性能优化": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-c5b34b286e5f48738b8a5150626a7a0b", "keywords": [], "children": [ { "指标": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-34f06d1f46cf49ef99762e88b3e66fa8", "keywords": [], "children": [ { @@ -10203,28 +14931,43 @@ { "First Contentful Paint (FCP)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f5e900d83b5b4cedb8e380e0753a0b53" } }, { "Largest Contentful Paint (LCP)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-431a0bc69bd647be95589da8fe160660" } }, { "First Input Delay (FID)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b05bc11150f1431d951090791d40cdad" } }, { "Cumulative Layout Shift (CLS)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fbecfc4f1d324a78b32afd921e58556b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-75c093ad1e7b4c16a30b290a10a4dc7f" } }, { @@ -10234,56 +14977,81 @@ { "Total Blocking Time (TBT)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-40c2f78f495b480ba44f7977eff7e3ac" } }, { "Time to Interactive (TTI)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1861026dd6924289ad4eccaf4ccf4532" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-28c19677ee9b41d0953eeb156ac94c00" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "评估工具": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-d47a2360dd174750b248b9a57104f579", "keywords": [], "children": [ { "Chrome DevTools": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-94efe0b5593c44019e167cf8393582c4" } }, { "LightHouse": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0a8c02cd4086477d96d027ce1215b151" } }, { "PageSpeed Insights": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4d34015ad82b47ed86a40bde836e989b" } }, { "WebPageTest": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-694e674f6ef3409c9382bd2f06ca201b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "优化方案": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-9bcef268cf12480e82686349037754f2", "keywords": [], "children": [ { @@ -10293,28 +15061,43 @@ { "代码压缩": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-89a9fdd18c904764b864165eed375ba6" } }, { "文本压缩(gzip、Brotli、Zopfli等)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ee1e701445b24587907053a7fe7001ee" } }, { "Tree-shaking": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4e12f0ddb8d64da0be7044a7eb1df9fa" } }, { "Code-splitting": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ab8e2771af8a45cd88185edb65af798f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-59df3fe4311b4f98a3db25ae587c0ee0" } }, { @@ -10324,28 +15107,43 @@ { "小图优化(css sprite、iconfont、dataURI、svg)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d558395b1c704bc5a5e3141e76f765bc" } }, { "图片格式选择": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7b28662ed8884c6db553e993659bd93d" } }, { "压缩(如tinypng)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7803f10ecaed4839a18b7ceb18e30c0e" } }, { "响应式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bd363cf077b64372b80017c19af4aae8" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4f1c3b3e188f4e8fac3dd6966a694181" } }, { @@ -10355,64 +15153,97 @@ { "懒加载": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-84e2e071f67f4f629726bc25146ac5f4" } }, { "DNS预解析、预加载、预渲染": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d6d8f2f22d7c4658a3a202bece1dd10f" } }, { "离线化(ServiceWorker、AppCache、离线包等)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4167cafd65524e7a862163c4437b3059" } }, { "HTTP缓存": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b78d6cabb63b43b2bc101fab83bfb6ea" } }, { "数据缓存(localStorage、sessionStorage)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5534a3acb4144005a5210952a0f2b2c5" } }, { "资源加载(顺序、位置、异步等)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6333a95f7be34124be481e470dd4e54b" } }, { "请求合并": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-11fbcc2ee7b548b1bd6e2ee43e21d4fd" } }, { "HTTP2": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-49ebc4ad7ffd4115988c144faced2731" } }, { "CDN": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8c3e9d4c9d9d46cba29e041a7e8dd1bc" } }, { "服务端渲染": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0054eee9eff8499ab36df5a02ef9b32c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4054d4cacc3d4cdfbcb5da81b8fd84b7" } }, { @@ -10422,16 +15253,25 @@ { "CSS代码优化(选择器、启用GPU、避免表达式等)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ef6db1c08ef84b278f7d23254a7d2ebf" } }, { "JS代码优化及评估": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8b216df49df1416b9bb9fb5842f19cd2" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c0e019fceebf4d31ab648915b06019f2" } }, { @@ -10441,75 +15281,101 @@ { "骨架屏": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2ee269071e3a400b8a3b146f3390f5c9" } }, { "Snapshot": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-52d1133496c84119b5c09059f453ce4b" } }, { "Loading": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6fbf73167a1d4d47955125224e4da2ec" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c0b57bfa5f784251b9acd999f99186ff" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "web高阶": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-b6d31a7b7e7d44b8ba8318e7d8f1b6c8", "keywords": [], "children": [ { "前端架构模式": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-084bc51d7233449780840ddf3f000000", "keywords": [], "children": [ { "MVC": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-87d7f240d9c94a2cb643eb3f02fcaf38", "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [] } }, { "MVP": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-4317e6484a6241c7b58a7c704de7e154", "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [] } }, { "MVVM": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-90cf4bc4e57e40479accbe42bb10db38", "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "vue.js": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-a21713ca817041af979ccac45e19dd41", "keywords": [], "children": [ { "遇见Vue.js": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-e7417cd14ddd427dba8dec3d90f12f88", "keywords": [], "children": [ { @@ -10519,22 +15385,34 @@ { "MVC": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d3564acb28b6485c8ae49cd545038def" } }, { "MVP": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6e9314b88c404e9fbad9e00d70a4bdba" } }, { "MVVM": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-422676eacb8c404f848941d0afdfb2a6" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3fbdfbeef87f4a63aa200feb20ab8786" } }, { @@ -10544,1902 +15422,2780 @@ { "Vue.js与其他框架的区别": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-54ca39145aac464dbfbb81916d2fefc4" } }, { "如何使用Vue.js": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3e805bbfe3524090b03dbffe2261a97f" } }, { "Vue.js的发展历史": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d7cbcf68ece440d4a7a8003d0d384fac" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-07e6e2fc2b0b410e8bab4b6c3908e821" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "Vue实例方法": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "数据绑定": { + "node_id": "web-8445bb9b80e74269b5b5593131551b2a", "keywords": [], "children": [ { - "实例属性": { + "语法": { "keywords": [], "children": [ { - "组件树访问": { + "插值": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5bac03138749409280351e63b81cbb28" } }, { - "DOM访问": { + "表达式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-de51a0b6562b49c3ac212e1c6238e4a6" } }, { - "数据访问": { + "指令": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6e6e90953f604ae6bcdba5a44a628711" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8855bf85e3214e10aa38876c2da72081" + } + }, + { + "分隔符": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-30a150df7ae84810b2328ede128a37d2" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "组件": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "指令": { + "node_id": "web-c186b0443f1a463b84a5756604c1acdb", "keywords": [], "children": [ { - "基础": { + "内部指令": { "keywords": [], "children": [ { - "注册": { + "v-if": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8538cec299364bb1bf10fe0cf6e3eec0" } }, { - "数据传递": { + "v-show": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-680ad8395ac748e1b57641aa38fa4c55" } }, { - "混合": { + "v-else": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8cccd31ba0d945ebad7db99df767c583" } }, { - "动态组件": { + "v-model": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e2ef418752f74d2c94141c3e38eaa3ce" } - } - ] - } - }, - { - "相关拓展": { - "keywords": [], - "children": [ + }, { - "组件和v-for": { + "v-repeat": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9ec80300579e4fc28d569771b4e3c593" } }, { - "编写可复用组件": { + "v-for": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-48a36e9e30a54abc9df6baffff375b8f" } }, { - "异步组件": { + "v-text": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-902b285f3eb94a0ebc79f7211969ffb1" } }, { - "资源命名约定": { + "v-": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5f0dbf68073b4549a686a6d8305710fe" } }, { - "内联模板": { + "v-bind": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-700a300223aa42509737664704741337" } }, { - "片段实例": { + "v-on": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9e08d97d672d4e60a68e5fed0395ce58" } - } - ] - } - }, - { - "生命周期": { - "keywords": [], - "children": [] - } - }, - { - "开发组件": { - "keywords": [], - "children": [ + }, { - "基础组件": { + "v-ref": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-77c22cfa993443b4af2a12c0e11e0e31" } }, { - "基于第三方组件开发": { + "v-el": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d40384e8345c46f590f5dbf788576c41" + } + }, + { + "v-pre": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-baefee10abc7440e8824e14b4c0685e0" + } + }, + { + "v-cloak": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-012315fa5036443fa62c3d2409f454ea" + } + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-15f5821150e841b9bef68a8454264645" + } + }, + { + "自定义指令": { + "keywords": [], + "children": [ + { + "基础": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9837fd4c96074f4aa1e88115ba27af81" + } + }, + { + "高级选项": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5a3d950ee769436b8f851245062cc232" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9d4336d5efb84953a7b4ed2e10f1f2a5" + } + }, + { + "内部指令解析": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f17ea21aef0443a6b4684fa9fb776d8f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "表单校验": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "计算属性": { + "node_id": "web-15622f846d174fb69cc7ae0baadeb91b", "keywords": [], "children": [ { - "安装": { - "keywords": [], - "children": [] - } - }, - { - "基本使用": { + "什么是计算属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6a2567b8ffe248f997e4f01b073738dd" } }, { - "验证结果结构": { + "计算属性缓存": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-daf04608f4f44f8a836c3b607da81b22" } }, { - "验证器语法": { + "常见问题": { "keywords": [], "children": [ { - "校验字段名field": { + "计算属性getter不执行的场景": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4b4799e8b62e438f802ea4c55596fae0" } }, { - "校验规则定义": { + "在v-repeat中使用计算属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8f32948984d34b08b2874a648036cfa3" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-55861ed9a0d54fc89f38eada3799b8f7" } - }, + } + ], + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "表单控件绑定": { + "node_id": "web-7b9d36d3937c44fba81120e86801ca1a", + "keywords": [], + "children": [ { - "内置验证规则": { + "基本用法": { "keywords": [], "children": [ { - "required": { - "keywords": [], - "children": [] - } - }, - { - "pattern": { - "keywords": [], - "children": [] - } - }, - { - "minlength": { + "text": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d50acc0c8e3744e8bd76b6f686abc2c7" } }, { - "maxlength": { + "checkbox": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7867560597c24d29ab4f2919c9ccee2d" } }, { - "min": { + "radio": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c5ca3af81b684fd2bf14acf286ee7a2f" } }, { - "max": { + "select": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3c3ca570190744c5866031ca52ed0587" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0261f30cf26f414e80ed8507fae686e2" } }, { - "与v-model同时使用": { - "keywords": [], - "children": [] - } - }, - { - "重置校验结果": { - "keywords": [], - "children": [] - } - }, - { - "表单元素": { + "值绑定": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-84bd1b7187f7473d8de5c4ca8201f6d4" } }, { - "各校验状态对应的class": { + "v-model修饰指令": { "keywords": [], "children": [ { - "自定义校验状态class": { + "lazy": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f921dbdf2fb24914806d6ab7b3368f8a" } }, { - "在其他元素上使用校验状态class": { + "debounce": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f0ec84d609be4cb087516492296e3c76" + } + }, + { + "number": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5a5a3770301c4ffb9c2ceaa931fc44be" } } - ] - } - }, - { - "分组校验": { - "keywords": [], - "children": [] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-da860d04a72c43dba620fd371c27f0ca" } }, { - "错误信息": { + "修饰指令原理": { "keywords": [], "children": [ { - "错误信息输出组件": { + "lazy源码解析": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e20206ef14ca4787b5b7aeacb32c6882" } }, { - "动态设置错误信息": { + "debounce源码解析": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-24bc877edf7449928a1a4eaa8208fdfa" + } + }, + { + "number源码解析": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e72539c7d1c246339d2f308949314e99" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b0b9290318674e1cae8d29472e23fa7a" } - }, + } + ], + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "过滤器": { + "node_id": "web-a0632a623e37467e9e8c7dd644c520d0", + "keywords": [], + "children": [ { - "事件": { + "内置过滤器": { "keywords": [], "children": [ { - "单个字段校验事件": { + "字母操作": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5497f3e0b1b741d29aa3be19e056ff62" } }, { - "整个表单校验事件": { + "json过滤器": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5b5db022afab4404ad68906d774a7140" + } + }, + { + "限制": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6417ec810d29406cad7be839c3c62aa5" + } + }, + { + "currency过滤器": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-11ee68b462284210b0612758a7f64ec8" + } + }, + { + "debounce过滤器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2c82e695bb3449ec84e990584f8d6129" } } - ] - } - }, - { - "延迟初始化": { - "keywords": [], - "children": [] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-926a19934d2b4c0c9a7728ac0fee2404" } }, { - "自定义验证器": { + "自定义过滤器": { "keywords": [], "children": [ { - "注册自定义验证器": { + "fillter语法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0d7b9ccfa59e407a880dcf9fff09750d" } }, { - "错误信息": { + "教你写一个filter": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7e414e692dd04b1b9f91b24e9d98d023" } } - ] - } - }, - { - "自定义验证时机": { - "keywords": [], - "children": [] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-00ad1ec2f91644d79ccb18a101304e2c" } }, { - "异步验证": { + "源码解析": { "keywords": [], "children": [ { - "注册异步验证器": { + "管道实现": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b57b9dcc684a477ebe3df691649a6f1f" } }, { - "验证器函数context": { + "过滤器解析": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-694498d2ad674207a8fecd1aa55725bd" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-08b3eca3d6f847c0a123e546fbbd5ab0" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "与服务端通信": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "Class与Style绑定": { + "node_id": "web-afe4c35f5c4a4e17b0c689748c3e4952", "keywords": [], "children": [ { - "vue-resource安装及配置": { + "绑定HTML Class": { "keywords": [], "children": [ { - "安装": { - "keywords": [], - "children": [] - } - }, - { - "参数配置": { + "对象语法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-583f3713005143899c2b423bbdb19d47" } }, { - "headers配置": { + "数组语法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e85b125eab124413b6b56e6aded379d5" } - }, + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-118769ab593c48e0afbbd883ee681abc" + } + }, + { + "绑定内联样式": { + "keywords": [], + "children": [ { - "基本调用": { + "对象语法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-084dc7e5a96b4adb805c3947eb4fc8b1" } }, { - "请求选项对象": { + "数组语法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-362355cf844c46dda99ce25fb0d24530" } }, { - "response对象": { + "自动添加前缀": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a66af23dbfa542d991c2365c29fd6247" } - }, + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6193dc3204aa4912bf3f394ece334cc9" + } + } + ], + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "过渡": { + "node_id": "web-e68bc3060cf945b8b04610ae8070657b", + "keywords": [], + "children": [ + { + "CSS过渡": { + "keywords": [], + "children": [ { - "RESTful调用": { + "内置Class类名": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c55c980e9d3f4eabbc4e4f419f3afdb6" } }, { - "拦截器": { + "自定义CSS类名": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e92ffdc671b846e7990835de331ba6aa" } }, { - "跨域AJAX": { + "显式声明CSS过渡类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4c5b1a10c885473282a05ac208de1649" } }, { - "Promise": { + "动画案例": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2dbfbdfd3cbf46daa6e3ba4471a4f2c3" } }, { - "url模板": { + "过渡流程": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3c1db3d1f9c94c2a8636a91913466e10" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6d257c7964d3463188c86739464fa3a0" } }, { - "vue-async-data": { + "JavaScript过渡": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6a72e6af455a413caeacf813fbd65035" + } + }, + { + "渐进过渡": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7281288b21f04733b83ee4a823f65151" + } + } + ], + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "Method97": { + "node_id": "web-b3cecfb26e0a43b1822b9fe50c734c7d", + "keywords": [], + "children": [ + { + "如何绑定事件": { "keywords": [], "children": [ { - "安装": { + "内联方式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5baf653703224a638be8512144cbcac1" } }, { - "使用": { + "methods配置": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-25c7881fcec64ddebfc91437367aac66" + } + }, + { + "$events应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-54e05ac8f13a42afb553cc25ad5331a5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8c51c647fac047c5ad72a99bb04cbfa8" } }, { - "常见问题解析": { + "如何使用修饰符": { "keywords": [], "children": [ { - "如何发送JSONP请求": { + "prevent": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7add814ef0b54018bc5677ebbdec2fed" } }, { - "如何修改发送给服务端的数据类型": { + "s00": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d44e2e386c7644b8aaf4971de7898af1" } }, { - "跨域请求出错": { + "capture": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-adb8635101fd4840ae82ee54a8fd5b80" } }, { - "$..post方法变为OPTIONS方法": { - "keywords": [], - "children": [] - } - } - ] - } - } - ] - } - }, - { - "路由与视图": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [], - "children": [ - { - "如何安装": { - "keywords": [], - "children": [] - } - }, - { - "基本使用": { - "keywords": [], - "children": [] - } - }, - { - "视图部分": { - "keywords": [], - "children": [ - { - "v-link": { + "self": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d6182f987be14f5997a98c00e9883ddc" } }, { - "router-view": { + "按键": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ec4d368df6af46ae84135ceb4be6e1e7" } } - ] - } - }, - { - "路由实例": { - "keywords": [], - "children": [] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ebeb40771e184e6491e75c2ad6a7b65b" } }, { - "组件路由配置": { + "Vue.js 0.12到1.0中的变化": { "keywords": [], "children": [ { - "路由切换的各个阶段": { + "v-on变更": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6f563031c1434b9f882d589202d08e95" } }, { - "各阶段的钩子函数介绍": { + "@click缩写": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3d89c146c0374378a9a050821d853d80" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-76b7a467bf644607907739d03693bf25" } - }, + } + ], + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "Vue实例方法": { + "node_id": "web-85beb5bf4b324eef8e952fd343805c1d", + "keywords": [], + "children": [ { - "路由匹配": { + "实例属性": { "keywords": [], "children": [ { - "动态片段": { - "keywords": [], - "children": [] - } - }, - { - "全匹配片段": { + "组件树访问": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-79a1c03e73334eef812d1b7a8f244a75" } }, { - "具名路径": { + "DOM访问": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2a3b515b50704ff79c67699f1c82d3b1" } }, { - "路由对象": { + "数据访问": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b7c81b2dc14b4aaaabc130e079762d76" } } - ] - } - }, - { - "transition对象": { - "keywords": [], - "children": [] - } - }, - { - "嵌套路由": { - "keywords": [], - "children": [] - } - }, - { - "动态加载路由组件": { - "keywords": [], - "children": [] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2dc5b41896474e3b801f3f933d42dbcd" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "vue-cli": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "组件": { + "node_id": "web-21a27df80d0a4ce49ae616ba83850ea1", "keywords": [], "children": [ { - "安装": { - "keywords": [], - "children": [] - } - }, - { - "基本使用": { - "keywords": [], - "children": [] - } - }, - { - "命令": { + "基础": { "keywords": [], "children": [ { - "init": { + "注册": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-547114b813b94584a923e73fed17bd01" } }, { - "list": { - "keywords": [], - "children": [] - } - } - ] - } - }, - { - "模板": { - "keywords": [], - "children": [ - { - "官方模板": { + "数据传递": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2cec47d8fe1044bda65bc95431d0f5ef" } }, { - "自定义模板": { + "混合": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1c6307b74ac44d5ba72f68ac01d130d5" } }, { - "本地模板": { + "动态组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0861ef6b69664036b3873edfffbb1d4b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-05b5fced7c224038a4fcb7ac40e0a6ea" } }, { - "不错的工具包": { + "相关拓展": { "keywords": [], "children": [ { - "mander": { + "组件和v-for": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6e6fa4910fd243489e16e0fceac13951" } }, { - "download-git-repo": { + "编写可复用组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5dc8bc73fd824a65a9e5e8c2a57ffbdc" } }, { - "inquirer": { + "异步组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-23e5eb3f0d184eeca4d55414f7986c6b" } }, { - "ora": { + "资源命名约定": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-db27112a725b40e2b74be374735be24f" } - } - ] - } - } - ] - } - }, - { - "测试开发与调试": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [], - "children": [ - { - "测试工具": { - "keywords": [], - "children": [ + }, { - "ESLint": { + "内联模板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1eb0f87f7d12427b8236dcfe5a2865e7" } }, { - "工具包": { + "片段实例": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-59461a9db01b4d80a15ffb830cdfe033" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5e3e20eb7ef34311971166cf09f15227" } }, { - "开发工具": { + "生命周期": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cf94ae2c063d47ecbe383a3ac8d76289" + } + }, + { + "开发组件": { "keywords": [], "children": [ { - "Vue Syntax Highlight": { - "keywords": [], - "children": [] - } - }, - { - "Snippets": { + "基础组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-05b92592e7e047428ae99c5fd7792359" } }, { - "其他编辑器和IDE": { + "基于第三方组件开发": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6d3fe220771648348708f365b7e1eda7" } } - ] - } - }, - { - "调试工具": { - "keywords": [], - "children": [] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fd4a078484fe402fa6f8acd63fe83971" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "Scrat Vue.js的化学反应": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "表单校验": { + "node_id": "web-bc72ccb87f7b49d3adfb6d11620e0c3c", "keywords": [], "children": [ { - "浅谈前端工程化": { - "keywords": [], - "children": [] - } - }, - { - "前端工程化怎么做": { + "安装": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ff682303102445b0a76be745bf691fbb" } }, { - "Scrat简介": { + "基本使用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-25012e141845481fbd0b820267cdee23" } }, { - "Scrat Vue.js实现组件": { + "验证结果结构": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e900002fa15a4c2fb3400076e0ac513c" } }, { - "案例分析": { + "验证器语法": { "keywords": [], "children": [ { - "准备工作": { - "keywords": [], - "children": [] - } - }, - { - "代码实现": { + "校验字段名field": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e87f1be753a64d8a994c681494d84ac1" } }, { - "编译和发布": { + "校验规则定义": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-68030d85f29c4433b1a56b3525fbeeef" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-58b6a361a244485092577318c91a9589" } - } - ] - } - }, - { - "Vue.js 2.0": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [], - "children": [ + }, { - "API变更": { + "内置验证规则": { "keywords": [], "children": [ { - "全局配置": { + "required": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3d430315674b46739993b9e82384db7f" } }, { - "全局API": { + "pattern": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8438615f115f49d0aad5ccc3202eed2f" } }, { - "VM选项": { + "minlength": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e33bd70a97414172ae34adedc0a477e3" } }, { - "实例属性": { + "maxlength": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5c53e39eff6d47208c699adef008a2db" } }, { - "实例方法": { + "min": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ea647c27fdc245adb857905b38ecd4d4" } }, { - "指令": { + "max": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e60cf853e21f4706bd4185a06cdcf0ff" } - }, + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-247d7d81eea243fbb63dc741015f7a8f" + } + }, + { + "与v-model同时使用": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8a582c59ac74497e8a45510efe2c9819" + } + }, + { + "重置校验结果": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7e35fc662f4f4e48bfabcd018988cbea" + } + }, + { + "表单元素": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-450f47b48a3849f3812a948f453166cc" + } + }, + { + "各校验状态对应的class": { + "keywords": [], + "children": [ { - "特殊元素": { + "自定义校验状态class": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-28bf2282358e4fe186fa0769fc365be6" } }, { - "服务端渲染": { + "在其他元素上使用校验状态class": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-34cdb6bee11c45b9815a52dbab2a865f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cb3c9162e62a4009b2d6ca7fc80efeeb" } }, { - "Virtual DOM": { + "分组校验": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-319ac1d498d54559af6a6c75d4ed7777" + } + }, + { + "错误信息": { "keywords": [], "children": [ { - "认识Virtual DOM": { + "错误信息输出组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-939cfe2a743a419cb092f529c6f81481" } }, { - "Virtual DOM在Vue.js 2.0中的实现": { + "动态设置错误信息": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-af34f41f308d428398cd6b1af42dbf74" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-893ad84ec4de437a9bba4441302a6ad8" } }, { - "服务端渲染技术": { + "事件": { "keywords": [], "children": [ { - "普通服务端渲染": { + "单个字段校验事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9ba4d083bce6453da8b6b0932f5836ba" } }, { - "流式服务端渲染": { + "整个表单校验事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d09c7a699924492aa5d1c17fe3956ac3" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5bb96bda8753471c9a9cd6badf650156" } - } - ] - } - }, - { - "源码篇——util": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [], - "children": [ + }, { - "env": { + "延迟初始化": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4ef8f2ba28ea4d6d9766c232d593d17b" + } + }, + { + "自定义验证器": { "keywords": [], "children": [ { - "系统判断": { - "keywords": [], - "children": [] - } - }, - { - "属性支持": { + "注册自定义验证器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-06bc53a18392430ab741bda894e3cc07" } }, { - "过渡属性": { + "错误信息": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-60db9ad9d23b4513bbbaa72a14d8f86a" } - }, + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-456a49c085f047fab9f8c74ebcaa0b8a" + } + }, + { + "自定义验证时机": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b2029fad39f940628ad28d8826fffef3" + } + }, + { + "异步验证": { + "keywords": [], + "children": [ { - "nextTick": { + "注册异步验证器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8e9ffe5c36634c28bf18cedd125898de" } }, { - "set": { + "验证器函数context": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aa63f92eb9294767b4facb2686654fd2" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d4bcaf40269d454989f97b9fed333e87" } - }, + } + ], + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "与服务端通信": { + "node_id": "web-7ca611ba46974544b11c3fd1b5d7b78c", + "keywords": [], + "children": [ { - "dom": { + "vue-resource安装及配置": { "keywords": [], "children": [ { - "dom操作": { + "安装": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-36058412ec284d2fa9fe79dad81c98ff" } }, { - "属性操作": { + "参数配置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ba38a381ec0742c2a97a7bac754aa5d0" } }, { - "class操作": { + "headers配置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-37ad60160bc640b2b09ec57cbfeec570" } }, { - "事件操作": { + "基本调用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cff9f0a898f140d5b39e909ab8829c1d" } }, { - "其他": { + "请求选项对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1577cd73b7354dacb9cb0b3d1d61df6b" } - } - ] - } - }, - { - "lang": { - "keywords": [], - "children": [ + }, { - "对象操作": { + "response对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-44266d993d3f4358ae17b4453f02dc12" } }, { - "名称转换": { + "RESTful调用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ec8b8f5827e3414391df66a9cba213b6" } }, { - "数组操作": { + "拦截器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6f6b909ebd504ddfa486abdea699f9df" } }, { - "类型转换": { + "跨域AJAX": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8dcab5502a104fa3bb5bc69827847897" } }, { - "方法绑定": { + "Promise": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a2356c96729d422f8da630123f1aff5d" } }, { - "其他": { + "url模板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-08feae3385da4fefb0aaedb67700f3ec" } } - ] - } - }, - { - "ponents": { - "keywords": [], - "children": [] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d23ba919414b4709b46b419f9166b311" } }, { - "options": { + "vue-async-data": { "keywords": [], - "children": [] + "children": [ + { + "安装": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1bfc6b61cdf147628864febc271c180b" + } + }, + { + "使用": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-26f08807bff840f7ad460e7a9742d36b" + } + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-689804d7d61d464b9fef1baf6b1e3c06" } }, { - "debug": { - "keywords": [], - "children": [] - } - } - ] - } - }, - { - "数据绑定": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [], - "children": [ - { - "语法": { + "常见问题解析": { "keywords": [], "children": [ { - "插值": { + "如何发送JSONP请求": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3d088fe0c9f945ff9e6ea67882ad3daa" } }, { - "表达式": { + "如何修改发送给服务端的数据类型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3fb0732747c84f0fa14cb92c4e305260" } }, { - "指令": { + "跨域请求出错": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-31e52831d4dc418c883e9d44c9367464" + } + }, + { + "$..post方法变为OPTIONS方法": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2a403450d8304134b47eb2cef91e076a" } } - ] - } - }, - { - "分隔符": { - "keywords": [], - "children": [] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3c3004097ebb463e947dadbf291978d0" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "源码篇——深入响应式原理": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "路由与视图": { + "node_id": "web-d735f3176a4b4abfa5c6067020600a07", "keywords": [], "children": [ { - "如何追踪变化": { + "如何安装": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2982e841fd5b44998730bfea7e54e6d1" + } + }, + { + "基本使用": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-49da9abb38cd46178a0388cef1a3da96" + } + }, + { + "视图部分": { "keywords": [], "children": [ { - "Observer": { - "keywords": [], - "children": [] - } - }, - { - "Directive": { + "v-link": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-384a000181c64f3b865c88e14bc9dbf2" } }, { - "Watcher": { + "router-view": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a997fe322e93412ca51b0d9209c16558" } } - ] - } - }, - { - "变化检测问题": { - "keywords": [], - "children": [] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7a1f5ad6918a427992706d505b573b6c" } }, { - "初始化数据": { + "路由实例": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2d09a7a228114e54b82d3fed01ae5da8" } }, { - "异步更新队列": { + "组件路由配置": { "keywords": [], - "children": [] + "children": [ + { + "路由切换的各个阶段": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-569d3834807942268bbc9618ad9f3f3b" + } + }, + { + "各阶段的钩子函数介绍": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-49913c8057c545ba8fb05d742a830837" + } + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d760ebdb6e2b4860a234e587e75cec9b" } }, { - "计算属性的奥秘": { - "keywords": [], - "children": [] - } - } - ] - } - }, - { - "源码篇——父子类合并策略": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [], - "children": [ - { - "策略是什么": { + "路由匹配": { "keywords": [], "children": [ { - "生命周期合并策略": { + "动态片段": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b093de69285847fdaf5befb60968d423" } }, { - "属性方法计算": { + "全匹配片段": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-51ec8fe202984328a61b214f7ed7588a" } }, { - "数据合并策略": { + "具名路径": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c41458eaa37e4ea980dccf8a77a6995b" + } + }, + { + "路由对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-34deae5f68cb4befa3a743d66afc2e89" } } - ] - } - } - ] - } - }, - { - "源码篇——缓存": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [], - "children": [ - { - "Cache有什么用": { - "keywords": [], - "children": [] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f170abf6a7964f8691a45d46afd6a66a" } }, { - "LRU": { - "keywords": [], - "children": [] - } - }, - { - "Cache类": { - "keywords": [], - "children": [] - } - }, - { - "put": { + "transition对象": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9b60e0950a9a42f682a888cf67f1ed99" } }, { - "shift": { + "嵌套路由": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-25f90796899f4d8a959f2690ebe879f6" } }, { - "get": { + "动态加载路由组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dc84b6e32ab142c7a538e95fd8199942" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "源码篇——属性props": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "vue-cli": { + "node_id": "web-ab51b41f7ce74bbea21dd550c65eb040", "keywords": [], "children": [ { - "流程设计": { - "keywords": [], - "children": [] - } - }, - { - "属性name": { - "keywords": [], - "children": [] - } - }, - { - "coerce": { - "keywords": [], - "children": [] - } - }, - { - "type 验证": { - "keywords": [], - "children": [] - } - }, - { - "default": { + "安装": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c4034ae914b04e4c89002a1d763bb290" } }, { - "validator": { - "keywords": [], - "children": [] - } - } - ] - } - }, - { - "源码篇——events": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [], - "children": [ - { - "events配置是什么": { + "基本使用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-696c316903684903acf3ff71fb77559f" } }, { - "如何配置": { + "命令": { "keywords": [], "children": [ { - "$emit触发": { - "keywords": [], - "children": [] - } - }, - { - "$once 绑定": { - "keywords": [], - "children": [] - } - }, - { - "$off删除": { - "keywords": [], - "children": [] - } - }, - { - "$dispatch派发": { + "init": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-016abc3641b649b387938b74e7948b54" } }, { - "$broadcast广播": { + "list": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f9c7edaebe5d4bd4b9cddabd0247007a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e45603eb316240f19330064139a141b9" } - } - ] - } - }, - { - "指令": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [], - "children": [ + }, { - "内部指令": { + "模板": { "keywords": [], "children": [ { - "v-if": { - "keywords": [], - "children": [] - } - }, - { - "v-show": { - "keywords": [], - "children": [] - } - }, - { - "v-else": { - "keywords": [], - "children": [] - } - }, - { - "v-model": { - "keywords": [], - "children": [] - } - }, - { - "v-repeat": { - "keywords": [], - "children": [] - } - }, - { - "v-for": { + "官方模板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-261aec9085cc4d3eaed84db93ac536e7" } }, { - "v-text": { + "自定义模板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9381ea8fb2bc4472b83bd146a02b5601" } }, { - "v-": { + "本地模板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0e1d3b4603464d4caa3c3b6b66387c09" } - }, + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-518e04f300b34249bf7d09a593e3add4" + } + }, + { + "不错的工具包": { + "keywords": [], + "children": [ { - "v-bind": { + "mander": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-196cf4905e5d49448f5bc725952ecdf1" } }, { - "v-on": { + "download-git-repo": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-45056ae860994b94abcfd539be38efd0" } }, { - "v-ref": { + "inquirer": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-75fab8755efb44fb80c56c7800b8b6d7" } }, { - "v-el": { + "ora": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2d35963c5b3c4516808a5241fb29f304" } - }, + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1ce993d502a644a1838308362d77b83f" + } + } + ], + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "测试开发与调试": { + "node_id": "web-e6004405e2cd4ecd9bbd75870b71bcad", + "keywords": [], + "children": [ + { + "测试工具": { + "keywords": [], + "children": [ { - "v-pre": { + "ESLint": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f244a66c0fa44b2da1ba94371669fa95" } }, { - "v-cloak": { + "工具包": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2c11b00b8ef247f685613026694d682b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-29b394a501884b2fae9c74e896fee6da" } }, { - "自定义指令": { + "开发工具": { "keywords": [], "children": [ { - "基础": { + "Vue Syntax Highlight": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f0ecfc3221e846038aca26b3c4f6e9a9" + } + }, + { + "Snippets": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-124573cf434240ddbab10408882c03ff" } }, { - "高级选项": { + "其他编辑器和IDE": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1854c706a7f449408916ec2466b9147b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3b488b3dd2da48fdaac00be7deb2809d" } }, { - "内部指令解析": { + "调试工具": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3e6dc0ffa2654fba84a31490481e39d6" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "计算属性": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "Scrat Vue.js的化学反应": { + "node_id": "web-299020b697dc4832a66b5ab7523ca367", "keywords": [], "children": [ { - "什么是计算属性": { + "浅谈前端工程化": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-32900d9ddc9b4fb78dcd21225817eaee" } }, { - "计算属性缓存": { + "前端工程化怎么做": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1f77ecf3cd3e49f8a4368e5ea87cb2ee" } }, { - "常见问题": { + "Scrat简介": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-383e8e78f29545c8a276f95503afe7f3" + } + }, + { + "Scrat Vue.js实现组件": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a801a5c51d4f48c5819d3b23db6497e2" + } + }, + { + "案例分析": { "keywords": [], "children": [ { - "计算属性getter不执行的场景": { + "准备工作": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c4b35f2407804c87aec9eb8a0b6ce976" } }, { - "在v-repeat中使用计算属性": { + "代码实现": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3dcd8cd3ae04471d83c18211e95b8b1d" + } + }, + { + "编译和发布": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9c1c3ef093134304a5c3710c8050a308" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1f47f970809e4513b354aa59388346e5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "表单控件绑定": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "Vue.js 2.0": { + "node_id": "web-04a3d3365b284ba9afc5eb82aac9621a", "keywords": [], "children": [ { - "基本用法": { + "API变更": { "keywords": [], "children": [ { - "text": { + "全局配置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-47374a0f72d14eb691f9ec88be22fc74" } }, { - "checkbox": { + "全局API": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-46c679d83e7c446b9a43de708fdc4728" } }, { - "radio": { + "VM选项": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fbcf1a8b76de46eca281ba8db447c0e8" } }, { - "select": { + "实例属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-41c689c8184e4a62bc57d722f57ec791" } - } - ] - } - }, - { - "值绑定": { - "keywords": [], - "children": [] - } - }, - { - "v-model修饰指令": { - "keywords": [], - "children": [ + }, { - "lazy": { + "实例方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-430956c7035c47f1b8d3f374598914f9" } }, { - "debounce": { + "指令": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-297aaf917f8c43eaaeb98c6864c9b9a5" } }, { - "number": { + "特殊元素": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7e0129e3be2a4dc7b13321bd5431fd06" + } + }, + { + "服务端渲染": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9a66f307dd0b400e9d3bb6f2d6da6125" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-75fcc2eee5bd4d16ae32225f04c83b0b" } }, { - "修饰指令原理": { + "Virtual DOM": { "keywords": [], "children": [ { - "lazy源码解析": { + "认识Virtual DOM": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-911d9614776f4e42a67594ab46611ebd" } }, { - "debounce源码解析": { + "Virtual DOM在Vue.js 2.0中的实现": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9396e5f9ba30404e92697d2569f2da6d" + } + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-61947d57fbd146e180ef3854dfcb11d5" + } + }, + { + "服务端渲染技术": { + "keywords": [], + "children": [ + { + "普通服务端渲染": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4625f7ffd20e41738cde3e420036ada8" } }, { - "number源码解析": { + "流式服务端渲染": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-724beb3dab6644089b49fa1e9d029e7a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-423767e2b538462cb24af61b332d0c27" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "过滤器": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "源码篇——util": { + "node_id": "web-835f7dcbc44e460eb02c246f416e32ee", "keywords": [], "children": [ { - "内置过滤器": { + "env": { "keywords": [], "children": [ { - "字母操作": { + "系统判断": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b585051d87214dbfa9bc51d746b149a3" } }, { - "json过滤器": { + "属性支持": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-100d6c8bd247483a89a012d4dee4c66f" } }, { - "限制": { + "过渡属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a494fbff71b54e92aa30641c3ecbc387" } }, { - "currency过滤器": { + "nextTick": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-22cfdd6aa3304902911ed590ab7121d5" } }, { - "debounce过滤器": { + "set": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2f132a319f9e4c59a19b2d34ae69adc6" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8fbcc8f416da4a30a9912c3da4163c94" } }, { - "自定义过滤器": { + "dom": { "keywords": [], "children": [ { - "fillter语法": { + "dom操作": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4cebdddd009a4091a4760e5c8d9bce4b" } }, { - "教你写一个filter": { + "属性操作": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6dd0fa6fd80b4bd293a78d994c537213" + } + }, + { + "class操作": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ee34d56bbea64523a538dfea38b64550" + } + }, + { + "事件操作": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c77eb8625a6a450cadf44566da0bcef9" + } + }, + { + "其他": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-75dc8b17682b4f049ed343c7f13e3519" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8bb990700c2148abb83638c26c475751" } }, { - "源码解析": { + "lang": { "keywords": [], "children": [ { - "管道实现": { + "对象操作": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-391b97ab0d3e46d087fbbe093ffff66d" } }, { - "过滤器解析": { + "名称转换": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-040e1b2e3dac40cd9b9068bb742e95e1" + } + }, + { + "数组操作": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b9a3646945d643588f3074c64c08560a" + } + }, + { + "类型转换": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7257ea41858348898f5f8fe368c51c24" + } + }, + { + "方法绑定": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d8112c07466e4365af31e98ae0528649" + } + }, + { + "其他": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d773e744de5f4f82ac055754658548ce" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-75d85931ba2f490aadac38d92aaa8395" + } + }, + { + "ponents": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-85d9845125534023b5cfdb72b2e19185" + } + }, + { + "options": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c4ba1518401544cfa74f8b0679a3b10f" + } + }, + { + "debug": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c622b157472144c0b8fb96e32779bc64" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "Class与Style绑定": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "源码篇——深入响应式原理": { + "node_id": "web-8a54acb390e04b688f1225fba7201eac", "keywords": [], "children": [ { - "绑定HTML Class": { + "如何追踪变化": { "keywords": [], "children": [ { - "对象语法": { + "Observer": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9115ea4678ee4376b7eef9b43264fc08" } }, { - "数组语法": { + "Directive": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-789ea7e0af1e4b099ad503cdba88b828" + } + }, + { + "Watcher": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b8f9dca7c7e8461985940e0c212add91" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-31c84359d568497d891e612281eada81" } }, { - "绑定内联样式": { + "变化检测问题": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6a44183f74a341aa881591bf5e64b793" + } + }, + { + "初始化数据": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0b7f15094d304aae931093b4640ba1a4" + } + }, + { + "异步更新队列": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c1c366b6a90c4c779f719ab38a4542b9" + } + }, + { + "计算属性的奥秘": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dbae8c4445214f67ada096eb981c656a" + } + } + ], + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "源码篇——父子类合并策略": { + "node_id": "web-65f3283a3d6f475abc8e484060285f1e", + "keywords": [], + "children": [ + { + "策略是什么": { "keywords": [], "children": [ { - "对象语法": { + "生命周期合并策略": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7bf1e756dda44926bca484f0332249a3" } }, { - "数组语法": { + "属性方法计算": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-363c6081b9584aa5a344da548908ec32" } }, { - "自动添加前缀": { + "数据合并策略": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-30be2a27428f490b9e2a4c2df89b761b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2b30810dfdad456dacd9de6bed051c9f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "过渡": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "源码篇——缓存": { + "node_id": "web-635391d05a99440da9737690e04caa59", + "keywords": [], + "children": [ + { + "Cache有什么用": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2779680f47dc404abaa4cb6cb80ec3d8" + } + }, + { + "LRU": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0ba91eafd9424f559dc4e26492693fae" + } + }, + { + "Cache类": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8f5cbf669aa44fb7896d2af7e4c12337" + } + }, + { + "put": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f8d417238bb74c5bab39bf8eb4e8f3d0" + } + }, + { + "shift": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-02f2260c8dae49329db54b4b346620e9" + } + }, + { + "get": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7979b27c2b2c4d4db8fc4bbeaaff225a" + } + } + ], + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "源码篇——属性props": { + "node_id": "web-bb637e5a9a5646208b18d961e44de405", "keywords": [], "children": [ { - "CSS过渡": { + "流程设计": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e45fc172caab4604a7e4d90cdb104f92" + } + }, + { + "属性name": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4ac984a2266248d6959b8d5d34fd2b55" + } + }, + { + "coerce": { "keywords": [], - "children": [ - { - "内置Class类名": { - "keywords": [], - "children": [] - } - }, - { - "自定义CSS类名": { - "keywords": [], - "children": [] - } - }, - { - "显式声明CSS过渡类型": { - "keywords": [], - "children": [] - } - }, - { - "动画案例": { - "keywords": [], - "children": [] - } - }, - { - "过渡流程": { - "keywords": [], - "children": [] - } - } - ] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-83447e0120e4408f9b88fa0c3c0151c2" } }, { - "JavaScript过渡": { + "type 验证": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-746d80d16e1f4fc0a17ce942192de5ba" } }, { - "渐进过渡": { + "default": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-edf8f804a64f424c8b8eb535c4cb3cf9" + } + }, + { + "validator": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-68f774fcd3904a0ab3eeba6032c6a1c5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "Method97": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "源码篇——events": { + "node_id": "web-45a2fbd6c2394d7aaae77f9cb6054a14", "keywords": [], "children": [ { - "如何绑定事件": { + "events配置是什么": { "keywords": [], - "children": [ - { - "内联方式": { - "keywords": [], - "children": [] - } - }, - { - "methods配置": { - "keywords": [], - "children": [] - } - }, - { - "$events应用": { - "keywords": [], - "children": [] - } - } - ] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c7eaeb4be9d246f28831cd2634cb686c" } }, { - "如何使用修饰符": { + "如何配置": { "keywords": [], "children": [ { - "prevent": { - "keywords": [], - "children": [] - } - }, - { - "s00": { + "$emit触发": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e4d5865ad06a4c478e39c0b56140376a" } }, { - "capture": { + "$once 绑定": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-520fdc54d0e749ff896a3d255a15eb08" } }, { - "self": { + "$off删除": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-758eb2555c2a457e9436ffa70d997151" } }, { - "按键": { - "keywords": [], - "children": [] - } - } - ] - } - }, - { - "Vue.js 0.12到1.0中的变化": { - "keywords": [], - "children": [ - { - "v-on变更": { + "$dispatch派发": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bcc34cb2d5324396a771096c853d7b2a" } }, { - "@click缩写": { + "$broadcast广播": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8c280684716f494f87fc9f17bff5dc04" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b9f84c759b6a4cdabb8acc7f04fdfc12" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "angular.js": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-aff6234f93d44ecc9a4731dc9859cd76", "keywords": [], "children": [ { "AngularJS简介": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-f8888fff6c104cbabec81f520db7ea6a", "keywords": [], "children": [ { @@ -12449,826 +18205,1199 @@ { "选择集成开发工具": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a9034a11b9ed49f0ad23d9c0ac7b35da" } }, { "下载与安装AngularJS": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7e40e693de654c1b8dee6b22af3c154d" } }, { "代码调试工具": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c21f560f581d491f80eef5ee38d092e0" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c002e35c46724f89928e28da312c791a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "AngularJS过滤器": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "双向数据绑定": { + "node_id": "web-aa0e89960f714af9af4e8a7a6e75f5f1", "keywords": [], "children": [ { - "过滤器使用方法": { + "AngularJS双向数据绑定": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dd348136881546e2ae04686c68f0ff89" } }, { - "AngularJS内置过滤器": { + "ng-model指令": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-604a76b7eef94fc182ab673e559065b3" } }, { - "自定义过滤器": { + "ng-bind指令": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fb5b0e000e4b47448b79416dd52b76ee" + } + } + ], + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "AngularJS与MVC": { + "node_id": "web-d8d9ec204e5e42d28e6a14fd67f40e08", + "keywords": [], + "children": [ + { + "MVC模式简介": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2ca9f1bbdfc64f8dae1d0fd3926bc2c4" } }, { - "第三方过滤器库的使用": { + "AngularJS中的MVC": { "keywords": [], "children": [ { - "angular-filter": { + "AngularJS控制器的定义": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0232aa0d03c748ffa81afa00bb2c14d9" } }, { - "angular-emoji-filter": { + "控制器对象的实例化": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-053b44f88e044fd6afecaf4757a95c48" } } - ] - } - } - ] - } - }, - { - "AngularJS中的依赖注入": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [], - "children": [ - { - "依赖注入实现": { - "keywords": [], - "children": [] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b37101452c9e416eb4dd2270eb97e8aa" } }, { - "AngularJS中的依赖注入": { + "使用MVC思想重构价格计算器程序": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ebee5d43eba04d2598c388fa09e703ff" } }, { - "$provide服务介绍": { + "控制器的作用域范围": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e8051429a7004c34b6a1549943ac9488" } }, { - "$injector服务介绍": { + "控制器中处理DOM事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7cb0886277674072910fc0b8b51d7f77" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "AngularJS与动画": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "应用模块化": { + "node_id": "web-01d4b751391c4d0aa893d659018c0bf7", "keywords": [], "children": [ { - "Web动画实现原理": { + "应用模块划分的重要性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-da73731376754bd4b96125657c9f6df0" } }, { - "使用CSS3实现动画": { + "AngularJS中的模块": { "keywords": [], "children": [ { - "CSS3中的Transform属性": { + "AngularJS模块的定义": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2e7d8a1079f147e29862d480ca22cf61" } }, { - "CSS3中的Transition属性": { + "使用模块解决命名冲突问题": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-20bd3e15be7042fa8ea0a9282453f210" } - }, + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d9a65ed104514031a70e2f2561ccc8e4" + } + } + ], + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "作用域与事件": { + "node_id": "web-0564ce02da0c43bab3a1d81192874fb6", + "keywords": [], + "children": [ + { + "AngularJS作用域详解": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0ebadeaf198f4279b29f39912f8f7b9c" + } + }, + { + "AngularJS作用域继承": { + "keywords": [], + "children": [ { - "CSS3中的Animation属性": { + "对象继承机制": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-83d70c4de4924eec9da745d66be8d9ea" } }, { - "常用的CSS3动画库": { + "AngularJS作用域对象原型继承": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-82f2aeb7d4bb4cd9b918067ff9266ce0" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-431f30a641574b46b73c9380b4b80d14" } }, { - "AngularJS动画": { + "作用域高级特性": { "keywords": [], "children": [ { - "基于事件驱动的CSS3动画": { + "$watch方法监视作用域": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4d7284ea45c2436a92cb18127e9c4cdc" } }, { - "AngularJS中的动画": { + "作用域监视解除": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2b011bafd8894b38b0c9cf99128aac2f" } }, { - "ngView视图切换动画案例": { + "$apply方法与$digest循环": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5a69c1562b874aca8401fa490a0997f7" } }, { - "ngAnimate与CSS3动画库整合": { + "$apply与$digest应用实战": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-20b21a6e7bc54daca35939e21ab977a3" } }, { - "ngFx动画扩展库": { + "$timeout与$interval服务介绍": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f991bb1f4cdb41f19880a01d73087291" + } + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2daf65cf15b946e695cb342cb7f0c1f4" + } + }, + { + "作用域事件路由与广播": { + "keywords": [], + "children": [ + { + "$emit方法实现事件路由": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7c6699af4029402b8b5ee0689d6014e8" + } + }, + { + "$broadcast方法实现事件广播": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2f5266e4a8b94fc7b6a6f43f906956d6" + } + }, + { + "作用域对象$on方法详解": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bd15d485bd5c440e92d9f373a8fc7152" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-797b30131bd74ddfbbd5c82ae6ac5daf" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "Cookie读写": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "路由与多视图": { + "node_id": "web-e73972020a7d447fba3c20f7bb678775", "keywords": [], "children": [ { - "Cookie简介": { + "创建多视图应用": { "keywords": [], - "children": [] + "children": [ + { + "使用$routeProvider创建映射": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-87e25de3c4e64ccfb2f5fcbdfc0fb4e9" + } + }, + { + "创建多视图": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-20147467fa3247b7ac6451fd61813613" + } + }, + { + "通过路由切换视图": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5f9d39088abc411fb890dba592545777" + } + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5f15bcf030094e8c9ee664e3a868bc38" } }, { - "在中操作Cookie": { + "通过URL向控制器传递参数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9fcf33b1253849359c4093fdb8bd1c0f" } }, { - "在AngularJS中操作Cookie": { + "ng-template指令的使用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f7594a4878764037b4acfaa5e232c19a" } - } - ] - } - }, - { - "Promise": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [], - "children": [ + }, { - "AngularJS中的Promise机制": { + "$location服务": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d062d15e70e84e9eac83d1e08ec76bf5" } }, { - "AngularJS请求Web服务": { + "$location实现多视图切换": { "keywords": [], - "children": [ - { - "$http服务": { - "keywords": [], - "children": [] - } - }, - { - "使用Express构建RESTful服务": { - "keywords": [], - "children": [] - } - }, + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-29cab5091e79407580e2d2988e59694a" + } + }, + { + "路由事件": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-176b21b86602404ba36686342917be1b" + } + }, + { + "ng-include指令": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-156c74cf02e24fd6b54d82ad12ed56b4" + } + }, + { + "UI Router框架使用": { + "keywords": [], + "children": [ { - "$resource服务": { + "UI Router下载与安装": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-287ef4c3a6874bdda599f79120671db8" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2133e82f5a624eb5968a3572abaeceb2" + } + } + ], + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "AngularJS表单校验": { + "node_id": "web-1cfd15e8ac9148a0a98ed7ecb7a095d7", + "keywords": [], + "children": [ + { + "Web前端表单校验的必要性": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1a321828bb614320958d9c1a0dcb4704" } }, { - "AngularJS文件上传": { + "AngularJS表单校验模式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6be98f3876004f0a93324c0e6f8b35b6" } }, { - "Angular File Upload模块介绍": { + "ngMessages模块": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1ec0944e81f64d41a0734cf6e084dd1a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "AngularUI": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "AngularJS指令": { + "node_id": "web-f4daf33ed2e04e888378e717e401cca9", "keywords": [], "children": [ { - "UI Bootstrap": { + "内置指令详解": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-affff18ecc9043adb73def97562abc70" + } + }, + { + "AngularJS自定义指令": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d7cf70c56aad46c298692f4a6fc843e6" + } + }, + { + "指令定义对象详解": { "keywords": [], "children": [ { - "警告框案例": { + "link方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1586c94c09cc4159a083eb3beaa86130" } }, { - "复选框案例": { + "compile方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-69a175bc5f354094801ed65a50f117b0" } }, { - "日历控件案例": { + "scope属性与指令作用域": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-71dc50bf1a5c4f719b7b5389af4ecd49" } }, { - "模态对话框案例": { + "孤立作用域与父作用域模型数据绑定": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-800b8fe08a7d48fa9ca59deb27579f33" } }, { - "下拉菜单案例": { + "Transclusion": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5e9d4032abd54c81bc2682a69f6fc5d5" + } + }, + { + "controller方法与require属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-23f05bf58f1c4064adaf77279e5e969e" } } - ] - } - }, - { - "UI Ace": { - "keywords": [], - "children": [] - } - }, - { - "UI Grid": { - "keywords": [], - "children": [] - } - }, - { - "UI Date": { - "keywords": [], - "children": [] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-de1ac04506e544ea879b780513ffe5ef" } }, { - "UI Select": { + "自定义表单验证模式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9889f7b751f948b6b5dd900d9cb3d9a3" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "AngularJS精华扩展": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "Service、Factory与Provider": { + "node_id": "web-a437107de6b1410199e43e33bbb6a65f", "keywords": [], "children": [ { - "利用Angular": { + "Service": { "keywords": [], - "children": [ - { - "柱状图案例": { - "keywords": [], - "children": [] - } - }, - { - "曲线图案例": { - "keywords": [], - "children": [] - } - }, - { - "饼状图案例": { - "keywords": [], - "children": [] - } - } - ] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-290f57eef46f42e7802c4b65ba9652e6" } }, { - "利用Videogular实现播放器": { + "Factory": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3dffb24ac3c64f9f9c86c8a77c090d72" } }, { - "利用Angular Chart生成图表": { + "Provider": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e4e531e2f38d47ff9aafc18a34f6da0f" } }, { - "利用ngDialog实现对话框": { + "Value&Constant": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f161c15c0af7450281a6c72a4e80bbad" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "双向数据绑定": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "AngularJS过滤器": { + "node_id": "web-aee168044bd84f21b839faf28c2da462", "keywords": [], "children": [ { - "AngularJS双向数据绑定": { + "过滤器使用方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cbea03dd340840ba9cff498161103685" } }, { - "ng-model指令": { + "AngularJS内置过滤器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9c91b196b2b549f09b7dfdff72893735" } }, { - "ng-bind指令": { - "keywords": [], - "children": [] - } - } - ] - } - }, - { - "AngularJS与MVC": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [], - "children": [ - { - "MVC模式简介": { + "自定义过滤器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0a1a3a2974a840bf9a6029a01d76c4ba" } }, { - "AngularJS中的MVC": { + "第三方过滤器库的使用": { "keywords": [], "children": [ { - "AngularJS控制器的定义": { + "angular-filter": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-26794de418c94b3a8085d136b5ad01ed" } }, { - "控制器对象的实例化": { + "angular-emoji-filter": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-60495466f5a048c082df1a018c390b32" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5e0dd147aa7a40969c6136420556740f" + } + } + ], + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "AngularJS中的依赖注入": { + "node_id": "web-c875f4bdfa10440a8bc23c0a8ae7a0d4", + "keywords": [], + "children": [ + { + "依赖注入实现": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1309c71f1c324899aa4f4307563d4f60" } }, { - "使用MVC思想重构价格计算器程序": { + "AngularJS中的依赖注入": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0d92ef45cb0f42a5988e92d0c203c880" } }, { - "控制器的作用域范围": { + "$provide服务介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f61e17ed637c42db8ddf1d4375677780" } }, { - "控制器中处理DOM事件": { + "$injector服务介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cf4f6a0629b34579aad6c40b39f43928" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "应用模块化": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "AngularJS与动画": { + "node_id": "web-5cd374bd64b84d38abadde0fadc69295", "keywords": [], "children": [ { - "应用模块划分的重要性": { + "Web动画实现原理": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fb631de4be774e0da20cd40396f31eee" } }, { - "AngularJS中的模块": { + "使用CSS3实现动画": { "keywords": [], "children": [ { - "AngularJS模块的定义": { + "CSS3中的Transform属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-787b665003ea4f6a9eff660637cea296" } }, { - "使用模块解决命名冲突问题": { + "CSS3中的Transition属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a3a2f874c24247189876ae9b2da39d6f" } - } - ] - } - } - ] - } - }, - { - "作用域与事件": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [], - "children": [ - { - "AngularJS作用域详解": { - "keywords": [], - "children": [] - } - }, - { - "AngularJS作用域继承": { - "keywords": [], - "children": [ + }, { - "对象继承机制": { + "CSS3中的Animation属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e9838c4919e7483096d910e3f110ea19" } }, { - "AngularJS作用域对象原型继承": { + "常用的CSS3动画库": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6baca6dd8f0542a488b61368da4c2e36" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e408ecd7e7ce4781a532eef7125f2715" } }, { - "作用域高级特性": { + "AngularJS动画": { "keywords": [], "children": [ { - "$watch方法监视作用域": { - "keywords": [], - "children": [] - } - }, - { - "作用域监视解除": { - "keywords": [], - "children": [] - } - }, - { - "$apply方法与$digest循环": { + "基于事件驱动的CSS3动画": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-89620f00a6c64bd5a72f91b619bc69ca" } }, { - "$apply与$digest应用实战": { + "AngularJS中的动画": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c55d4b826e8341bc824baaa34d89005f" } }, { - "$timeout与$interval服务介绍": { - "keywords": [], - "children": [] - } - } - ] - } - }, - { - "作用域事件路由与广播": { - "keywords": [], - "children": [ - { - "$emit方法实现事件路由": { + "ngView视图切换动画案例": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1ccdbed0a0a045cb93ae1047518907e4" } }, { - "$broadcast方法实现事件广播": { + "ngAnimate与CSS3动画库整合": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e76f715b0ca94cfba82bf7b637126ddd" } }, { - "作用域对象$on方法详解": { + "ngFx动画扩展库": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ff9f0e6f4595489da0d4c3b42bc27491" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-762f97850b1140ea86647749456966cf" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "路由与多视图": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "Cookie读写": { + "node_id": "web-bd8fa602335047c8bc3ac270720a7b6a", "keywords": [], "children": [ { - "创建多视图应用": { - "keywords": [], - "children": [ - { - "使用$routeProvider创建映射": { - "keywords": [], - "children": [] - } - }, - { - "创建多视图": { - "keywords": [], - "children": [] - } - }, - { - "通过路由切换视图": { - "keywords": [], - "children": [] - } - } - ] - } - }, - { - "通过URL向控制器传递参数": { - "keywords": [], - "children": [] - } - }, - { - "ng-template指令的使用": { - "keywords": [], - "children": [] - } - }, - { - "$location服务": { + "Cookie简介": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a086a61a2f244b588e43fa14615a0f9a" } }, { - "$location实现多视图切换": { + "在中操作Cookie": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-78eec819c7564c5e9dfca8c5e90618f7" } }, { - "路由事件": { + "在AngularJS中操作Cookie": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6d69e78ff5d94b2c962ac78cf4133aa1" } - }, + } + ], + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "Promise": { + "node_id": "web-af56ba8bfd71455bb0659b9c82b8928b", + "keywords": [], + "children": [ { - "ng-include指令": { + "AngularJS中的Promise机制": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-edda4a2cd2f049638df36b01ab9fd007" } }, { - "UI Router框架使用": { + "AngularJS请求Web服务": { "keywords": [], "children": [ { - "UI Router下载与安装": { + "$http服务": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-09053775ce174277b9d894568fa5eadf" + } + }, + { + "使用Express构建RESTful服务": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f166084d0a9e492383db6a9a2ac0e430" + } + }, + { + "$resource服务": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-363b7ef370184f94858037f8d95d6152" } } - ] - } - } - ] - } - }, - { - "AngularJS表单校验": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [], - "children": [ - { - "Web前端表单校验的必要性": { - "keywords": [], - "children": [] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fbb57601002549e6bbe2f5e15b9e40d5" } }, { - "AngularJS表单校验模式": { + "AngularJS文件上传": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3cc4f009558d4190b3334995418ee49d" } }, { - "ngMessages模块": { + "Angular File Upload模块介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aa39b98f91cd49359ddf6881de623735" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "AngularJS指令": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "AngularUI": { + "node_id": "web-418b7e787d2a44f39ed22fc504e701bb", "keywords": [], "children": [ { - "内置指令详解": { - "keywords": [], - "children": [] - } - }, - { - "AngularJS自定义指令": { - "keywords": [], - "children": [] - } - }, - { - "指令定义对象详解": { + "UI Bootstrap": { "keywords": [], "children": [ { - "link方法": { - "keywords": [], - "children": [] - } - }, - { - "compile方法": { + "警告框案例": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-90833b359f104ab1bced331c14cc29b6" } }, { - "scope属性与指令作用域": { + "复选框案例": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-074aaace179b42c4aecf3a83439d7f07" } }, { - "孤立作用域与父作用域模型数据绑定": { + "日历控件案例": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6aee7fa8693042ba90b547def15f174e" } }, { - "Transclusion": { + "模态对话框案例": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0bb0ce95ee0741b2b459f24b6afc2bf9" } }, { - "controller方法与require属性": { + "下拉菜单案例": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3a43855d993c4b5dbc2b1129bb607d40" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d3ebea9ea7b24f2a8d067fc5361d42a7" } }, { - "自定义表单验证模式": { + "UI Ace": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5d634af46be24fb1a8425f577658dfca" + } + }, + { + "UI Grid": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f529f0806c514d83abf49c2cb992625e" + } + }, + { + "UI Date": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b998cad5ed984140ac881f27f9f76668" + } + }, + { + "UI Select": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1365134f03fc47dc8955062b6c6b623e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { - "Service、Factory与Provider": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "AngularJS精华扩展": { + "node_id": "web-d1544db8cb8048f5afe869c9f89f6a06", "keywords": [], "children": [ { - "Service": { + "利用Angular": { "keywords": [], - "children": [] + "children": [ + { + "柱状图案例": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6756ba89973c4e50bb45f314c21de5e0" + } + }, + { + "曲线图案例": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-37c904f66c9344abbf902aa87f688c6f" + } + }, + { + "饼状图案例": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9a07976b733d4fa0a76209bfb9156e77" + } + } + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5f79c5d32af34756b1e1be8a1b6f00cc" } }, { - "Factory": { + "利用Videogular实现播放器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-18ac4689e8fd4ee2baacd6469bade39a" } }, { - "Provider": { + "利用Angular Chart生成图表": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-817138d8ff0941e8bf878b29dcb00c29" } }, { - "Value&Constant": { + "利用ngDialog实现对话框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4c0b955c22624cf291003d6a8b3bd8ed" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "react.js": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-b164ff2d7da54fd992a94988362a00e6", "keywords": [], "children": [ { "React简介": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-c0c62b432a394ab48b68358835bffa86", "keywords": [], "children": [ { "React概述": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c64528fd13864563b8783d30df719983" } }, { "React优势": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9259423adfdf4f648f5d2b4cbfac58d5" } }, { "第一个React应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-41cdcf15700949f0a973df7ad43324b9" } }, { @@ -13278,688 +19407,1009 @@ { "关于React脚手架": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-48a4b9b725be421c86788e6b13afb4ce" } }, { "Node.js与npm": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-59091f26d7d04597beea19eefd11ba45" } }, { "Webpack模块打包器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3fcca7be47974b17b7a2b5ffe140f4fe" } }, { "ES6和Babel": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-74866131f75544d3aa01f4e1d6c80b1e" } }, { "使用create-react-app脚手架开发第一个应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d8854467ac9a45a18b7a54cdaf91a4af" } }, { "React项目架构": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a0d684c9c8b840169cefd5ecea19ee85" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-580af9ff4c2646d7886c0d2e7fde5d07" } }, { "React虚拟DOM": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-357c4f5eb8a147608e4966916c4d3d40" } }, { "JSX简单入门": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6c3fc6160c9f4f6180c74c1b1c961960" } }, { "React渲染机制": { "keywords": [], - "children": [] - } - } - ] - } - }, - { - "状态提升": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [], - "children": [ - { - "设计构想": { - "keywords": [], - "children": [] - } - }, - { - "实现水温监控功能": { - "keywords": [], - "children": [] - } - }, - { - "加入第二个水温输入框": { - "keywords": [], - "children": [] - } - }, - { - "同步二个水温输入框": { - "keywords": [], - "children": [] - } - }, - { - "将水温“状态共享”": { - "keywords": [], - "children": [] - } - }, - { - "将水温“状态提升”": { - "keywords": [], - "children": [] - } - }, - { - "实现水温同步换算": { - "keywords": [], - "children": [] - } - } - ] - } - }, - { - "React扩展": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", - "keywords": [], - "children": [ - { - "Node.js与React": { - "keywords": [], - "children": [] - } - }, - { - "Babel与React": { - "keywords": [], - "children": [] - } - }, - { - "Webpack模块打包器": { - "keywords": [], - "children": [] - } - }, - { - "Node+Babel+Webpack搭建React环境": { - "keywords": [], - "children": [] - } - }, - { - "Browserify模块打包器": { - "keywords": [], - "children": [] - } - }, - { - "React Router与单页面应用": { - "keywords": [], - "children": [] - } - }, - { - "Redux与React": { - "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4a5cfadadd2a447fa3bd1a67bc941265" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "React JSX": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-6cc4fe0d075e4cd6a18c4a13f726f471", "keywords": [], "children": [ { "JSX介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b49a8d3047b0450c9e066f9e1513694f" } }, { "JSX独立文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ef5f30f01e3e471381b3377fa9009e90" } }, { "JSX算术表达式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-335033531f9944e59ac5604d4ded13f7" } }, { "JSX条件表达式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0b71edb4c45747949d506cc8b88ed00b" } }, { "JSX嵌入表达式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2fa62731c29d4a958cf5d0e94b0e62cc" } }, { "JSX对象表达式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8505d867076c4d3b9e6364f13e7df2ec" } }, { "JSX函数表达式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5a369fc55f6b4b6c94c2fa0610fcae1f" } }, { "JSX增强函数表达式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4358c93ac109437690f0981b9095dc26" } }, { "JSX数组表达式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ef3d8b21305d45aca5e205e4023d6d0a" } }, { "JSX样式表达式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d5a19f63c15b4cb6b19b3d84d7d7119d" } }, { "JSX注释表达式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c5a3cd88392a4d5e8f21b54a432248c4" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "React组件与Props": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-8996fe9180d441519a31a6bf048bf2de", "keywords": [], "children": [ { "React组件介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6b95f469d1914388ab53814fc027eae2" } }, { "React函数组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1836e97441c34535a3dc275f12aea936" } }, { "React类组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e377ea4f5d2044169ea8931eab55caed" } }, { "React组合组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8346e89472c04e25bbd5c14303b8718d" } }, { "React Props介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-973b8ee8fa8a41c6a4478a8e9b076f95" } }, { "React Props应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cc0611de9aad4af2a2b6bb642d76b3af" } }, { "React Props只读性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2293049841464f4fb35459a347af4987" } }, { "React Props默认值": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-298f9f188479406aac7aa98022e8b661" } }, { "React组件切分与提取": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-535e364ca8ed4de886e70abeb1081553" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "React State与生命周期": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-8c40d5114d164861adc986b7b196cf3f", "keywords": [], "children": [ { "React State介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3ed4122d437c4a658a1f41767290195f" } }, { "关于定时器时钟的思考": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e7e1fcdfa22e4136b0f0d39e9b7bf165" } }, { "开始封装时钟UI": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-43dd34ec13c14f81886ae13479aa72ff" } }, { "实现时钟UI的自动更新": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ccd116d07c0b417c9585940b1b198550" } }, { "自我更新的时钟UI类": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c1bcd904f9bf473da9b129c911dd20c6" } }, { "在时钟组件类中引入State状态": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-418a04017a9e47369f88c26703a4a751" } }, { "React生命周期介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8e83dd3d148049759f2d3848f3484a11" } }, { "在时钟组件类中使用生命周期": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4d52757c1ef04d92b782b88a828fa2d2" } }, { "正确的使用State状态": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fd987913ce29401a86b06b2b23a7fa4a" } }, { "自顶向下的数据流": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c6645b6a09b64f838c272b1257264e20" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "React事件处理": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-a7a3f8c49643453686818236a8645517", "keywords": [], "children": [ { "React事件介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ac0cb82adfdc4224b9fe1c14122249ab" } }, { "React单击事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-db93a56a27eb4499b71edcf5c4ab6b4c" } }, { "React阻止事件默认行为": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-82b504d57d4e48299d11a14e7d407390" } }, { "React类的事件处理方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-17b8a0657f7540afa9ae77bdafc16df5" } }, { "绑定回调方法的其他方式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1fc0f63976ee4986ad778c8f25c94e4e" } }, { "在事件处理方法中传递参数": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a143d00d9aed4f4db04c6f13937e0e74" } }, { "实战:开关按钮": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f761e96f5e7e482c899838687d8b2051" } }, { "React文本框事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0af108ab1b8d499883deeda99004d2ad" } }, { "实战:水温监控控件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-625e058eae7f43de99e35a00d34a48c6" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "React条件渲染": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-84c9c51cdab04526a13e301a24920c3f", "keywords": [], "children": [ { "React条件渲染介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6b26304dbb5e45ed8b083a54c56de654" } }, { "元素变量的条件渲染": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b7909b4e4a4647e8b4f23f13a33516a4" } }, { "逻辑“与”运算符的条件渲染": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-210e60270c1d4a6a91763308f5f16495" } }, { "逻辑“或”运算符的条件渲染": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4bf83f916dc947b4821aa1ed5b13a38a" } }, { "三元逻辑表达式的条件渲染": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dd3ee7d6a5c642cf81994f30a0c143fe" } }, { "实战:改进登录组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9cb4f31f0a04422aa8a1b8b6a12c6ed0" } }, { "阻止组件渲染": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9bf386400743416b9ef0fa431f63eb8f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "React列表与Key": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-e87624b89ab643af9d9f7e02a3a7c7be", "keywords": [], "children": [ { "React列表介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2ba916f5edbb4d8daed30ceaf1109841" } }, { "基础列表组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8f83478ca9764f47bc6962580207b14e" } }, { "多级列表组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b585a7339ed44a3287689dd0ed7278dc" } }, { "React Key介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e19d4582a5a946b8bc39e84cb1e6705b" } }, { "React Key使用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c4002a4d8c9c4be2ab1bd5d6f613c2a6" } }, { "React通过Key提取组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-66d393267daf40a0af7c22217e28f254" } }, { "React Key局部唯一性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-35edec0ff9ca452ea8dd30aa62d85801" } }, { "React Key有效性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4625df4b02074bd6b1cfd867e0aac3c1" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "React表单": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-60b20289647149ed9e0454bce40f1b4a", "keywords": [], "children": [ { "React表单介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f156a8e135984a6f92bf76fe14c74d23" } }, { "表单受控组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-120504b86597417fa26f2b5a2358fd68" } }, { "强制转换大写字母": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2807638c465e4445ab0e19e69ae34565" } }, { "校验手机号码格式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1580a2a778f2464ea33e86ddbe060093" } }, { "格式化序列号": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ea78ba881bd241209766ea42c3c581f5" } }, { "文本域关键字": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-76f4808adbcd4527843bd6383dca61e8" } }, { "下拉列表受控组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-12dc1dfbc6f84c068d444c2a1d3ccfd1" } }, { "处理多个输入": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-20d4ca4964f04cbba08d63735f643c38" } }, { "React表单提交操作": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-56502694d5c2484eb9e0036cb3cf9b6d" } }, { "React表单提交服务器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e91c120b41fb42bdb0e32247d0938945" } }, { "受控组件与非受控组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e4721a97c5db432790081115dac3d68e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "组合与继承": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-15959569bdad41dc890a1a77fc746509", "keywords": [], "children": [ { "组合与继承概述": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cd402481f7d64235bf30f6d5854fa691" } }, { "定义组件容器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b5228ffd02d54594bd14aebc3c9314bc" } }, { "定义子组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-357920d6492741b795d069dfbb18f68a" } }, { "自定义Props属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c3d219bf6434484d9396ba432528bba2" } }, { "特例关系组合": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fc61157fecc34225915ec401938da634" } }, { "类组合方式确认框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6febfe4f5df94ec3ab3e03f4ab305c66" + } + } + ], + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "状态提升": { + "node_id": "web-6f3e19ebd78249a69c16e4fd02a01449", + "keywords": [], + "children": [ + { + "设计构想": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-40b0621c450d45378fb1e3363c5d958c" + } + }, + { + "实现水温监控功能": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f34eec0e97544693ba711c63116951d5" + } + }, + { + "加入第二个水温输入框": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-302518f3f17647b2bbc50f092b15e8bf" + } + }, + { + "同步二个水温输入框": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d728750d7c4d4005a7e723c741b237fc" + } + }, + { + "将水温“状态共享”": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4431f923ac9147ce9f7eb8eae196fc3d" + } + }, + { + "将水温“状态提升”": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5101abe483554344bee957fcd6ecb3c7" + } + }, + { + "实现水温同步换算": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9e5cb5e3d3cc453fbe5b64a558da6252" + } + } + ], + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "React扩展": { + "node_id": "web-dba303fe32134af9badadfeca1227bfe", + "keywords": [], + "children": [ + { + "Node.js与React": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e74de3dc7b0b49288409bcc5640267c1" + } + }, + { + "Babel与React": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1e0c548cebab47ef963def777c6f6598" + } + }, + { + "Webpack模块打包器": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-40fbc4e2070e49e2af13d10527fb33b7" + } + }, + { + "Node+Babel+Webpack搭建React环境": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-824706b5f44e45c8a3856da4e04ad83a" + } + }, + { + "Browserify模块打包器": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dfe40605179e4573bacfdd5bf55b471f" + } + }, + { + "React Router与单页面应用": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7e5bfde7b0a54a6896c5394058ee705a" + } + }, + { + "Redux与React": { + "keywords": [], + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8c5e2be6c5454a248643857a25c2c653" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "小程序开发": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-2250748f4fc443e593a64a4ff6476f43", "keywords": [], "children": [ { "微信小程序": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-9613e6fe110e49e2b593077b0e1e549b", "keywords": [], "children": [ { "申请小程序账号": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f8e742b0273c4baab626afb1bbd348f0" } }, { "微信开发者工具": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a8d2fbacd0804f9f892067a33e730809" } }, { "上传开发版小程序": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-65b5fc0d69fb4f1caf85da7e56112abf" } }, { "项目结构概述": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cb2289e4936f42eeab73491c3357cca1" } }, { @@ -13969,58 +20419,88 @@ { "全局配置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7c4874a6508045209ee1546ce1aedf0d" } }, { "低版本兼容": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0f7bb31789a14f01a17f43a1964b7e16" } }, { "pages属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5dd6c2299df74cd7941a1d8f08ad612d" } }, { "window属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ab5d8694b62d493a87cb021ff576c2fc" } }, { "tabBar属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-89404b30c52d442f930840d914b1c3ec" } }, { "networkTimeout属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-24ea80d1e66e4411b8b7de1e2cbea7ed" } }, { "debug属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7a28b10f26f347b2ab0a2a37cf8adb0f" } }, { "其他属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e2d28c55ae7940a1933dcdd325f839a5" } }, { "页面配置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-298fc685395b4a7898768e751542afe1" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-583e7fcb6a5840058e0b08fcf5dc6573" } }, { @@ -14030,46 +20510,70 @@ { "认识WXML": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5a7d0f20e46247188488aa2b55d596a0" } }, { "认识WXSS": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4435c786fc914dd29c7ebb9f9c23db46" } }, { "容器组件view与弹性布局": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-192887204f834efe9731c16f7357a8a6" } }, { "盒模型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-571a299ca12e49a4a6ec553678944014" } }, { "块级元素与行内元素": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6bdab62122d14f9b8519b490c371aeb2" } }, { "尺寸单位": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6983664c98834e2e88a2444de101e2a5" } }, { "平台差异与样式补全": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-78bb1d6184664f7680e21f2d71c10f50" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a6e5bdb331dc4f8e872bc8d7490a42eb" } }, { @@ -14079,42 +20583,62 @@ { "App注册": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c43d667869494a38a691c6fe1f95a63f" } }, { "Page注册": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5fa825934acf4e6d9b6ff04b337fbe29" } }, { "将数据显示在视图中": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5eca8ea516054a58b13cc59deb05cee4" } }, { "页面组件事件处理": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6fd1a96e2c6a49eea59dac5b7087282b" } }, { "小程序API": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8b448d55be5348379603d2fad182b301" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6ff451caf3c44e13acb7057228d7f88b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "支付宝小程序": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-0e88757616c84c52ae477d0548d20ded", "keywords": [], "children": [ { @@ -14128,40 +20652,61 @@ { "历史背景": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fddcb341b1d143aab115eb2bef10d6f3" } }, { "应用场景": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d0e688b150a44d719ef8142b9136e4a2" } }, { "小程序的影响": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bb9381ef2a524d55805f14e70ec0f7af" } }, { "技能要求": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-780abb99d9a748a0bb52e8a8d502e53d" } }, { "小程序入口": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3a9984228011409c89abdeee8d3d2de8" } }, { "小程序开放能力": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-21340d3528d1494796480a5b1852f743" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-287808296dc844e29ed3efa347377e44" } }, { @@ -14171,31 +20716,49 @@ { "成为蚂蚁金服开放平台开发者": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d675104110f2417ebf337055874314a0" } }, { "身份角色的入驻": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f590e971506e4d608cca23cdb98e110b" } }, { "创建小程序": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4674ae383c1647e28e1ecd87449bda28" } }, { "小程序设置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e72c9b18ecbc4c7ea62134879202fd78" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e8f3ec2792fb4f2daac737ada9f9c166" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d42ce232e6e946d5b75e2a7ec67afe4f" } }, { @@ -14205,46 +20768,70 @@ { "安装蚂蚁开发者工具": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bafe4b9b3f2c4210aadf1ce27dc1fae5" } }, { "创建示例工程": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e38051c18c26496aa7220298be7c9566" } }, { "编码与调试": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-36b4ece125bd4de2956458e7d39bc923" } }, { "上传": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-837d4a8269024bf49b7ace3cd83381b5" } }, { "设置体验版(可选)": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-48b46083be964368aa6e6ba0f8e7f7f4" } }, { "提交审核": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-92fdb881af154cd38e87e485205cf2fc" } }, { "灰度测试与上架": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b01865b4c1bc4565a3724e9191552751" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-767976beaa814cc0a5720b9290273c76" } }, { @@ -14258,22 +20845,34 @@ { "盒模型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4ed8d25774a544c7b2f37785174d4d8c" } }, { "显示、定位和浮动": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7602d7b0b9ee482ba791b1cf7610f89d" } }, { "Flex布局": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e5d36b780eba4fe09c69e9a1d839dcb8" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b032cb24e7ff4f05ad499c44e9758007" } }, { @@ -14283,31 +20882,49 @@ { "最初的时代": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b2d4d92d7c8c4b80b1a7c586921fba6d" } }, { "前端的革命": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b4c51a3ff7084667b4486fac77417602" } }, { "类库的繁荣": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9ce5ae6dcd804c36aa317a638731085a" } }, { "框架的兴起": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8b62df307e934d028490cb1062b4eca1" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9ac4ea1a632d4671b94ea26c992aa0a7" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-00b0aad5fc7c435489de97b81f37d9cc" } }, { @@ -14317,7 +20934,10 @@ { "目录结构": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9af3a2eebd5448efbb2c42b6269b2e4a" } }, { @@ -14327,16 +20947,25 @@ { "全局配置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c85146a3a43f4f0ebc8aca94410fda65" } }, { "页面配置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4091bbb2f9444cd482bc7245b153b229" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9e3043a12aad46328b7e7b97df2d11e3" } }, { @@ -14346,16 +20975,25 @@ { "注册程序App": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-864a8c563fc843aa8e2039963a75b008" } }, { "注册页面Page": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-469e105699f24e9f963c67d68085b80a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-76be00f071354b78907f13c94a8d524f" } }, { @@ -14365,49 +21003,76 @@ { "数据绑定": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-82a5b9bfc051429381e982550b1cd088" } }, { "条件渲染": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-431868ff139d4cf795bfc92a62d5b081" } }, { "列表渲染": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e3e547f0ced04c63be9d7cb7041da695" } }, { "定义模板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fd8c4c8275f64b648bc9ad58007df138" } }, { "引用文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-08ce8b341bcc428b9af1fa7b900f98a3" } }, { "事件绑定": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1b9d8d450bfa43d8837dedafc23f5c87" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8ce35954dc5840438f1db28492291ab7" } }, { "样式ACSS": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8bf228d5c8b348b086b6dc3cf127341a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-35fd0b8c9d8f440f95f962f063aa2229" } }, { @@ -14421,22 +21086,34 @@ { "基础容器view": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0be792b436e245cc85f7fa8bf0c0646e" } }, { "滑块容器swiper": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-399a7cf938bb4f258b6758e3f0437c85" } }, { "滚动容器scroll-view": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-907a0cf7a4da41fda68eace9bd536cb0" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-63a78639f2b74e32a9599166b0c4fb75" } }, { @@ -14446,22 +21123,34 @@ { "文字text": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-db24e5a5c18843c1ae988bf3634dc889" } }, { "图标icon": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-321c5eb2d4b2412da06b2f568899fcb3" } }, { "进度条progress": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-21ebc77b4ef9454691d4d607b6f799bc" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-855e8ea0db4a4a918f6ce2793583cc7f" } }, { @@ -14471,85 +21160,130 @@ { "表单form": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d070d77654a648df81832e1953040539" } }, { "输入框input": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7e673c2bb6d1494b88013f79246a4c07" } }, { "按钮button": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f024aecc418a4cd7901134fcdcd59463" } }, { "单选框radio": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3099e7d76429479a9998c4a41736acaf" } }, { "复选框checkbox": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-51609ba17ab04a3294077e170c7400b5" } }, { "开关switch": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-26188b49db1c4d7cb6149037e5b8da58" } }, { "标记label": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-38a5f3ac7f8c46929deba6c7f1222ac7" } }, { "多行输入textarea": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dca31150d6bb46aa8491da95899890ad" } }, { "滑动条slider": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f7053bf8b2e14e1db25334f9b77fe39d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7087e1630084418092b628d2f1c8655d" } }, { "导航": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-101b1318e3814acf8a5f1d9a858cf5c8" } }, { "媒体组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7dffd5022c9e4bc98b64fd32754ecaf0" } }, { "地图": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c4fa24721f2a4c8db40009ab479aa9fe" } }, { "画布": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8cffc41b725e4a71ac2de9b934d60eca" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a5c4f2ecc67e446898cfc484fdddea0e" } }, { @@ -14559,46 +21293,70 @@ { "组件结构": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-20c77f3046424e69badc95aa8bbdbb93" } }, { "折叠面板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fc727dbb95ee45a88c3081ab296f4916" } }, { "下拉菜单": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8b3a75bb2f4b48eba5436eef9bcf72df" } }, { "通用错误页": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5d6d5c8dd86948abb8e67eaa9f880d58" } }, { "宫格": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-679481d2bb4e41e58a215d6e40ae3964" } }, { "列表": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5d091152e02542d6bc61453f11ce5c12" } }, { "标签": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3c80c8b0dd1d426c9a2c0ac03024f805" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9d24f15d15a44d4fb7698f44bc87b88a" } }, { @@ -14608,40 +21366,61 @@ { "获取授权码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bfd496b1199345f1809c4880f23b9b79" } }, { "获取用户信息": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8dab4ee5303a4e01933e2e54d6a3dd36" } }, { "发起支付": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-04192b8eca97419ba5f8b3c227a9eaca" } }, { "跳转支付宝卡包": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2e9146309ced4a7d9ab53e66d8cebee2" } }, { "会员卡授权": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-44c8363aaeb44153ac4fc5fa7eeea341" } }, { "芝麻认证": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-010e2c20176d4220bd7383749e7023ea" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2e6e2b59594e43beb2662f376b99d96a" } }, { @@ -14655,58 +21434,88 @@ { "导航栏": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3b3b8574bd094d2bbb250326e1e8ee0a" } }, { "TabBar": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-303444e2c33c45ca98f7ed49810f0cfe" } }, { "交互反馈": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9f92d785036d427fac0a91c557cd2cae" } }, { "下拉刷新": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c94d513bfb114ece96d6f82ac509d6c8" } }, { "联系人": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fb0497f099dc47b48ccc62fed5705ea9" } }, { "选择城市": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-183c544e26ef48a08687add45eb33f4e" } }, { "选择日期": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-467c6209384040d08b50001e8f0fe3b4" } }, { "动画": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cb8383b50d8340efa9ef61e0025920e2" } }, { "画布": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-92bc69d1d03e4a339082df8e1a894002" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-553189f82ac743f895aa4bc624a15856" } }, { @@ -14716,31 +21525,49 @@ { "发起请求": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-500bca847a1f433aaa302b919f117a52" } }, { "上传文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b877f841f1a44773bfc195f96aa53002" } }, { "下载文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-290563f71e3e4523921d328eab4d837f" } }, { "WebSocket": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b707212fc603440c876a94c31316c145" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-380b1a0c690a4eaa80aa830827bae692" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-380c258aa9094c3492c2fb4fc3e3d6f9" } }, { @@ -14754,94 +21581,142 @@ { "获取系统信息": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-daea71af4b7d4551a5e63454e0c57bec" } }, { "获取当前网络状态": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d4d9c257f6214e4f8e3f14693532f6d3" } }, { "获取服务器时间": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e5389472afec4670a63edff8e3e4d54b" } }, { "剪贴板": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e9cdd0f48b424d34b5f58cc432460a1e" } }, { "摇一摇": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-53926b2b07084253a50c3a9573f3bd1e" } }, { "震动": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-145f2e4177a84f4bae0293d61e0c26dc" } }, { "打电话": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-145d00dabf1b432d9f8703118e296ac1" } }, { "用户截屏事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-827919ee8e2c4a8981d3dd13ead4be64" } }, { "屏幕亮度": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-30d1fce5f28a4445933252895cee377d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dba315f7591e4911a93b5215f9eb017f" } }, { "媒体": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-30b0d7b1232040f296fa7f99ef042578" } }, { "位置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-37d9e8baa12a46ee85ea8d37c4c573ab" } }, { "缓存数据": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5b83d09a576a45258e24ee75e297c7fe" } }, { "扫码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2c306efb8ad740b2a23f707b730c187c" } }, { "分享": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b276aa55b7474e079daaa9d178a8730c" } }, { "数据安全": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-65433be108704041b0bf16df008eb2b7" } }, { @@ -14851,35 +21726,51 @@ { "快速接入": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5d497ea467af4993a404b237199a374c" } }, { "API列表": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d5564a53d91647eb9aecc6d18eaea56f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-caad779d1dec41cab7abf04bcd83331e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-52dbf4ca36884bfd9d8140d4bfe4454f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "移动App开发": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-de9f9129655b46dd9a5d9dc69ce2e279", "keywords": [], "children": [ { "Android App开发": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-4c0d57cd279c4b7fbb52e3a53cc230d1", "keywords": [], "children": [ { @@ -14893,16 +21784,25 @@ { "Android的发展历程": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-509abdea8fd64f0098d5388e2a4e0614" } }, { "Android Studio的发展历程": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-48e66ca5ff8e44449a6fd11ca394f1d8" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-53e9264787554050828c07d87fc9dc6b" } }, { @@ -14912,22 +21812,34 @@ { "开发机配置要求": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f9cb1ca9a4294720943ffc487a595809" } }, { "安装Android Studio": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5bb3c02d563d42f5b18255d0a8e99be4" } }, { "下载Android的SDK": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ca05712656954e829d9495c07ea4431c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b39861ea800c4408966be42118225a72" } }, { @@ -14937,22 +21849,34 @@ { "创建新项目": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b0ef5b3b0ca34ec898e5ee34a2dee10e" } }, { "导入已有的工程": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d7a2f026dc0142aa90ce0737e810585a" } }, { "编译App工程": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2da868c800ae409d8b08c6a0f45df055" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-816af9b622cb483cbb5696c39011db72" } }, { @@ -14962,25 +21886,40 @@ { "创建内置模拟器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ecabd7ea07984629970de8d48c0be315" } }, { "在模拟器上运行App": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ea1340a93e1b49c88ef71ab78e342da6" } }, { "观察App的运行日志": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2ae89c2b760c43eaa923c892553636cc" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8035b43d17d348ea81abcd37e447d94a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ca4147e6bb2347a784b6f7453d5d4e12" } }, { @@ -14994,22 +21933,34 @@ { "App的运行环境": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-df1445d32acc42438a65c361560660e1" } }, { "App的开发语言": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-efdad8e43a0348699285ccfcbf1b99e4" } }, { "App连接的数据库": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-891ab1ed507446d2a7100c1683ecd138" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d6c471740ceb425298707974fc8e39a5" } }, { @@ -15019,22 +21970,34 @@ { "App工程目录结构": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-da2ff668e6fb45039c7257a79104fe56" } }, { "编译配置文件build.gradle": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-14eb66a18d3b4456b29d3b70290895c1" } }, { "运行配置文件AndroidManifest.ml": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ee0dc13a7210454cbcbf97dbdfef7e24" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5bdd07016b2c4a4daec24ffcfbf1a4be" } }, { @@ -15044,22 +22007,34 @@ { "界面设计与代码逻辑": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-05e84b55bdbd4d999607e5c28f15956c" } }, { "利用XML标记描绘应用界面": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5bf9bb7752244d72a82f72775040136f" } }, { "使用Java代码书写程序逻辑": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-05a0071292bb472985bbff96f27ca816" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2c36abb27ed74153b98f691e27481913" } }, { @@ -15069,25 +22044,40 @@ { "创建新的App页面": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c1b3cb4193b84ec6a9ffa12205329286" } }, { "快速生成页面源码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-470e80602da145f782dc9819edc41b4a" } }, { "跳到另一个页面": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6245eee699f5488e90f0a4bc35196365" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9f856e43398b498685eb2e5aed64f366" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cd877211e2e84aa3898e0d978aae60da" } }, { @@ -15101,22 +22091,34 @@ { "设置文本的内容": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c6e43559b3ac4243923dec50b4e9d707" } }, { "设置文本的大小": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d49d0092492f487786b3d7b15f0e0335" } }, { "设置文本的颜色": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3dfea1fff1e546beb7103e6084d00f9a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1272a757a7174ab2b3e812878d49c924" } }, { @@ -15126,22 +22128,34 @@ { "设置视图的宽高": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d0095c9bb5fa40dd94961a6bb8f9b234" } }, { "设置视图的间距": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3556170f566643ac9a156b4ca47f5caa" } }, { "设置视图的对齐方式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c454f000821d4d479bdd85b79187381e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3974036b003a4bc9b8f0720001c3a8ea" } }, { @@ -15151,28 +22165,43 @@ { "线性布局LinearLayout": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-19b2e556332d4d57852c0f0bdd276043" } }, { "相对布局RelativeLayout": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-998f5c27bd1b43eaace277392a303d5e" } }, { "网格布局GridLayout": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7ca10983f8b84ef8afa30927137fff3a" } }, { "滚动视图ScrollView": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ce53ad63aa7e4cee81fb50664e69a0fb" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9720436b5e054547ab38f5d80d4f100b" } }, { @@ -15182,22 +22211,34 @@ { "按钮控件Button": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9286f2d013f346bd8201851f29ed75ae" } }, { "点击事件和长按事件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8ded233e50d24f4e89f582652f57ab8e" } }, { "禁用与恢复按钮": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-361ef0c9d0294debb0dfc40f321495c5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2a3b4f34959d46f1b1be6a49d6694789" } }, { @@ -15207,22 +22248,34 @@ { "图像视图ImageView": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3abfb4d0dab44592ba54a1efe2ca39ce" } }, { "图像按钮ImageButton": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-636c11eb0e754aa7bcca6b06e71cb984" } }, { "同时展示文本与图像": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-28abb0b9a7bf494687a37b09486bf615" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9ce9ab2cc0364bef952a2f0bcc3549d5" } }, { @@ -15232,25 +22285,40 @@ { "需求描述": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-be8d3756a4334dd1b7d0feea0ad0bd44" } }, { "界面设计": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-35ec7840a26f4128a04e4caf0d230f18" } }, { "关键代码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-760d16371f67495b84d3e7212e376914" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ca9cbc6d925842c5930fb62048a8d9cb" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-661a6c26c37f4f2b9226f66eabf332f6" } }, { @@ -15264,22 +22332,34 @@ { "Activity的启动和结束": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e38e7af3436c405fb35caf09fa557c69" } }, { "Activity的生命周期": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-db38b47325544152a5e166bbde777bdd" } }, { "Activity的启动模式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e67d06fe80f0441b82f70a1d9969438c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-370e6cf28f7647f5823d6236d87ddd11" } }, { @@ -15289,22 +22369,34 @@ { "显式Intent和隐式Intent": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f938f72a6fc94e4c9896d37e54763e2a" } }, { "向下一个Activity发送数据": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e2d8df8fe19747b19801c4bdf8038b5d" } }, { "向上一个Activity返回数据": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3b31495707ab4f4bbc5ad46ec9edd910" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2b172b78c58f490ba92d58ed72db4900" } }, { @@ -15314,25 +22406,40 @@ { "利用资源文件配置字符串": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6ba5bd56f7224abd88da3223cbb7fc61" } }, { "利用元数据传递配置信息": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-290beea2c2bc4bac8046a1829a42b699" } }, { "给应用页面注册快捷方式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3f1ae0c878464779bd51465ca41a9695" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-024027db797849a4a7059fed325f606b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2f24d7a58c0347f8ac02195a65f1a3e5" } }, { @@ -15346,28 +22453,43 @@ { "图形Drawable": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-76a6e1cdc6a1420aa3a84ea16dc87527" } }, { "形状图形": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-22ea4451ae7a4d8c89225a378d5d547f" } }, { "九宫格图片": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-00717c4a24d44504b7f6f46e501e1e59" } }, { "状态列表图形": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-72b4a7f3cce04ce382ea320ee5c0f122" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-49d3d2b2ef4f41f6b59b6be2a2f6991b" } }, { @@ -15377,22 +22499,34 @@ { "复选框CheckBo": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a0d597be451343a8ae8348b00f122aa8" } }, { "开关按钮Switch": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-85a26df7b3884c1e8a95db9e995a9108" } }, { "单选按钮RadioButton": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-df272f329f864708b5063018dd2ca475" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f43abe0b03f34a9d85093401f2b1f4d4" } }, { @@ -15402,22 +22536,34 @@ { "编辑框EditTet": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6d9cb6076fe74c0384d8f9adbc7288e7" } }, { "焦点变更监听器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c0d088e0f05244279abaa3ca1fd0c2e0" } }, { "文本变化监听器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-819f97073568453fa8bf18ea6f55de53" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0f01c7f95c524e1e9822b7fbd9e69d02" } }, { @@ -15427,22 +22573,34 @@ { "提醒对话框AlertDialog": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7df43492bc0840e497f58d3ce2af4f5a" } }, { "日期对话框DatePickerDialog": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dac29242c494457fbf8547056b0dc0d4" } }, { "时间对话框TimePickerDialog": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7c90279659c34cbda16ba74f872de598" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cd1260df2c984b50962f4909c579a652" } }, { @@ -15452,25 +22610,40 @@ { "需求描述": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-06fd9b01faa54d19a148a40e071d45c9" } }, { "界面设计": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-55cb522284c5420885b4c13e8d64cf12" } }, { "关键代码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-61c59bfccf9543d399ea0a93c78f7a55" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-21f22b7c7fd340e1bc411801ea8daf17" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f3ae2789fe6247b2bd825d527935fb35" } }, { @@ -15484,22 +22657,34 @@ { "共享参数的用法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5719fd8e80cd4d928b5f629d2ac6d2b0" } }, { "实现记住密码功能": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-42c19a739b41407584aea14f67512f68" } }, { "利用设备浏览器寻找共享参数文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-537e5570717c4c9ba2682916841c978e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-33f9c0c0c61f460aaec5504e2c64bd28" } }, { @@ -15509,28 +22694,43 @@ { "SQL的基本语法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b1ab20726f5045aa8fd01ec8e9853594" } }, { "数据库管理器SQLiteDatabase": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-13f27612b32040e1850c653bc059d4ad" } }, { "数据库帮助器SQLiteOpenHelper": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-728501f187374ec0a63ccc55f668c79a" } }, { "优化记住密码功能": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-38ae7820ec5445eeba42a118b5008d50" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3d5cb4c7c42548bb8e788365cc091108" } }, { @@ -15540,22 +22740,34 @@ { "私有存储空间与公共存储空间": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a12a0b9904a24eacb9a070d029640a06" } }, { "在存储卡上读写文本文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5832b543f89e4347b542f4bb01224283" } }, { "在存储卡上读写图片文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0637d5ae86074cd69ce9011043615053" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cb9cc933e4f0422d95ba05d6aa0fe080" } }, { @@ -15565,22 +22777,34 @@ { "Application的生命周期": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3ff3e8b50e164ec4bc364b21029a4013" } }, { "利用Application作全局变量": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9fb039131f04415a8e038dcabc76eb4d" } }, { "利用Room简化数据库作": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-20e9e6d0997c486bbaccc879f1fe7e6f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bca8553f0583407f9c84dcfb327f0aa7" } }, { @@ -15590,25 +22814,40 @@ { "需求描述": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a2aacb123dfb4149805b40890fc41d47" } }, { "界面设计": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d3c9135315774511b35425353d959a06" } }, { "关键代码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-92f3f6fd978940018c00cfb04ef21103" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c3989ee6702347d5b487c7c35b009bb7" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-32275f1b2e2749728ff9b7bbe965d7e0" } }, { @@ -15622,16 +22861,25 @@ { "通过ContentProvider封装数据": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-254f17ae619b4ed4b5734c094e03ddeb" } }, { "通过ContentResolver访问数据": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5f1eebb3c95749948ce68a00c4f567ad" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-04927b4a5ada435ba7a0ede3ec256faf" } }, { @@ -15641,22 +22889,34 @@ { "运行时动态申请权限": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a5c940dd07834653a9ba5db65b51d891" } }, { "利用ContentResolver读写联系人": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a0c8745a99a04739b1c48e63cc11f629" } }, { "利用ContentObserver监听短信": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b0e633dd3d4241e5a34dd7e56fd56b32" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-438f3b8e143643b5a6df56f6e9861582" } }, { @@ -15666,25 +22926,40 @@ { "使用相册图片发送彩信": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a75ba6d19a804e03b6060e7b6e407710" } }, { "借助FileProvider发送彩信": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f5183c0f09034b429ed4dfd253f35c98" } }, { "借助FileProvider安装应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7eddd2de140c4d1285a344afa53de612" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-079923d647cb459ba9754fe0274bdadd" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1eab57484cd842539dec7c43ab6a9b07" } }, { @@ -15698,22 +22973,34 @@ { "下拉框Spinner": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f10a52a97d9c41ebade66e41ed13d539" } }, { "数组适配器ArrayAdapter": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-563d96c11107491997210741f9961691" } }, { "简单适配器SimpleAdapter": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bbdc26253f194ffc9efe7e0506fb9791" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5637ff01270e4428b032698b344aa455" } }, { @@ -15723,22 +23010,34 @@ { "基本适配器BaseAdapter": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f207ab698de4495bad8b01c94d17d15f" } }, { "列表视图ListView": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-491bbaa8dcda4d5cb48a7ae7ed4d0de3" } }, { "网格视图GridView": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d6add135e13d43a0b52d8cf9e6315919" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-35bdee11469c4cb0af279512b9755f5d" } }, { @@ -15748,22 +23047,34 @@ { "翻页视图ViewPager": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-61df9db6cf394f599195754ed844f6ae" } }, { "翻页标签栏PagerTabStrip": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d66c8b87376f4bc1a717215022990637" } }, { "简单的启动引导页": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-eb175cf7e84e458a9b70fc303233e3dc" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a5de34ea733f47f0985cee39112bebe5" } }, { @@ -15773,22 +23084,34 @@ { "碎片的静态注册": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bbed9a6b60614cb097f9c91aaf093d35" } }, { "碎片的动态注册": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aa4d9b09659448bfb19c6e40b7ee548a" } }, { "改进的启动引导页": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cab6f920d27e4084b54673720bd69c22" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d90e992a99ce421cad6c9fd3ec815af8" } }, { @@ -15798,25 +23121,40 @@ { "需求描述": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8fb4d78a84414cc897a334d2a3948eeb" } }, { "界面设计": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0302cb03cc204109b6ac563dc063b109" } }, { "关键代码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c285a288fb864ae7ae6eeef992e3cfed" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-973bdb0e82844c549f59d6527906a0fe" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-58bc61ac5f194f90958dc40c4016305f" } }, { @@ -15830,22 +23168,34 @@ { "收发标准广播": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-742f023fe0b14beba9726dfc29b410ac" } }, { "收发有序广播": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5c81ddb006024543b23981be840ffa28" } }, { "收发静态广播": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2280065f3c19416ca4741a6a61856966" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ae7087198de643199fc157f69aa2a5bf" } }, { @@ -15855,22 +23205,34 @@ { "接收分钟到达广播": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dd067ebceb1d4363ba34aaf3c1e90318" } }, { "接收网络变更广播": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fc94e84586da4da28642cc583313e624" } }, { "定时管理器AlarmManager": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-74bba7dc8cdb49b6be4cc5aa21275858" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1b415959aec64bccbae2123bbc13fb26" } }, { @@ -15880,19 +23242,31 @@ { "竖屏与横屏切换": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-585f3f6a1a994b099dcfd1e842796db5" } }, { "回到桌面与切换到任务列表": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-70561ac9eefb42ec88c00b188adc7933" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f8c5413f62ce4fe5a13e341b2b932728" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a28b96ccf2fd4413979cafb74323b60f" } }, { @@ -15906,22 +23280,34 @@ { "视图的构造方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4afbd739cb5c4ae89eb613ffb1279694" } }, { "视图的测量方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-35d4683119ca4518ba7665fc8ea402f7" } }, { "视图的绘制方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-86f5f4c294844072ae2651fe6ab7b810" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-27804e118e9f4b54a0bb21dcd7519372" } }, { @@ -15931,22 +23317,34 @@ { "自定义月份选择器": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4575c9e50e604986af813ec2211e2e9e" } }, { "给翻页标签栏添加新属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7023bb67577c451c81a2c9a9df8d1312" } }, { "不滚动的列表视图": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4aa6f7e6ea064b29b268ba6e62db05ab" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b5e4beb9c3d44ad58be2eeb58c4de16a" } }, { @@ -15956,22 +23354,34 @@ { "Handler的延迟机制": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9cb269c8b30d4672bf7d3b7b3df4de97" } }, { "重新绘制视图界面": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4d7b6492c5ad43a3905cf2c620f7606e" } }, { "自定义饼图动画": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-953b2ac27b634326a17422112ca2a334" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1a75182d2e89479ba6e88b1c53bcdc97" } }, { @@ -15981,25 +23391,40 @@ { "需求描述": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c4f62fac9ca248169643341feb7193e1" } }, { "界面设计": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-30bc610af05d4665b0307fcc2d7fee80" } }, { "关键代码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-df0ac028e9d444faae4258bf7163003a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1e1b3631a3874296b8e2c96ac635dff9" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7bb518b71a07488093035b43934e7136" } }, { @@ -16013,22 +23438,34 @@ { "通知推送tification": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-32c00a359ad142118976b654cf0953a8" } }, { "通知渠道tificationChannel": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-08f85005955a425dbf148023e953c350" } }, { "给桌面应用添加消息角标": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e65342c745704d0a94ef6194730f7159" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c312b284e95b429e8dc79c25ec51e3cc" } }, { @@ -16038,22 +23475,34 @@ { "服务的启动和停止": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4c21194001084774ab6fafabbd4dcc07" } }, { "服务的绑定与解绑": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d7e81650139c4e32b1de68bf69f2ec88" } }, { "推送服务到前台": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-97cab9b5d3b24d6a95a72aff9bc0d7b7" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-61de97c28ce148bfb73cac022a3e9598" } }, { @@ -16063,25 +23512,40 @@ { "分线程通过Handler作界面": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ff8ccc4553e248de84d4eb0d372d984d" } }, { "异步任务AsyncTask": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-daacf492ed604cb190571daefd1c87b7" } }, { "异步服务IntentService": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ac94b626ceba4df89ba736f0e3b758c4" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8b19b27cf96e4e92ae65c5dd30041426" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-659eb15f0c9045b89ee2e20a270a2de2" } }, { @@ -16095,22 +23559,34 @@ { "利用BottomNavigationView实现底部标签栏": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4795841e98d84ceb81ede0472abc1311" } }, { "自定义标签按钮": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-32bb9252da9743dfa794f18d0f95fd15" } }, { "结合RadioGroup和ViewPager自定义底部标签栏": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f7d41442619242c5af09bd6278315431" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dd1a3f9378174ac482fbce85d46b5675" } }, { @@ -16120,22 +23596,34 @@ { "工具栏Toolbar": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-173843ecc39e47f3b5a9177b416cf07f" } }, { "溢出菜单OverflowMenu": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-34e5d8fc0494452eb0384b05501f2b3a" } }, { "标签布局TabLayout": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-219fcb6b0e724e6e8c0436b1bcec5b2b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4d00960c53be4060a09f4f911475d711" } }, { @@ -16145,22 +23633,34 @@ { "循环视图RecyclerView": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b13d9a9959f04bb7b1602b0843f49bd8" } }, { "布局管理器LayoutManager": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7e770c0fbccd4d349748cfc7775b7c33" } }, { "动态更新循环视图": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-91e4687781074a469da69393bb5c2afe" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2f28013beac848b7b747c256ad5a4957" } }, { @@ -16170,22 +23670,34 @@ { "下拉刷新布局SwipeRefreshLayout": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ee76652e89fa486cb81fb20e48c60df4" } }, { "二代翻页视图ViewPager2": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d6645b0a600d49888d55abdfbc05f257" } }, { "给ViewPager2集成标签布局": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ed384049343f4ce0939889f824a32496" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-29cc3b6ec9b24678b92dc4eb67d9a519" } }, { @@ -16195,25 +23707,40 @@ { "需求描述": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7b62ecc09cc3472d84f7199a5e17daa0" } }, { "界面设计": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-27ac2b5499924bbc96130aafb515544b" } }, { "关键代码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9bec44a048154379a4fb43f518652cc4" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-689f814ed75543a4803c0466bad7c678" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ce95eedd74c54d3ab027a9931a58a70d" } }, { @@ -16227,28 +23754,43 @@ { "使用相机拍摄照片": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-35c2b8acbf9e4fc6b777a46bf0696ce2" } }, { "从相册中选取图片": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ed0472ea89f14db6a7b481cd38c7a83d" } }, { "对图片进行简单加工": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aca50d239e3d469ead3819ddb99f947f" } }, { "图像解码器ImageDecoder": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c2c7cf8b4715495f80466e1934f568a4" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-825cff2001284138833b63cf7d7c654e" } }, { @@ -16258,22 +23800,34 @@ { "使用录音机录制音频": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-84f11cb3b6ae4f1caf68b7ac335c3e14" } }, { "利用MediaPlayer播放音频": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1926f07906f04c85957273f1c17aed12" } }, { "利用MediaRecorder录制音频": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f465fd43365d4acebdcd28dc7ee43b7a" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3dc2906e68134d40a32d92475ca0fa2f" } }, { @@ -16283,27 +23837,41 @@ { "使用摄像机录制视频": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-983953a0bf994713a04eec6ae571fd44" } }, { "从视频库中选取视频": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-94ff65b1563b40fdb368a0548c834bcc" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8c2949f1d1264288b1a05de8f51a77e5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-13bc999b6bd4475599d36a1a075b6b37" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "IOS App开发": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-ace9170a8f7d47b5852bd77db5f3e880", "keywords": [], "children": [ { @@ -16317,16 +23885,25 @@ { "新增拖放交互编程接口": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5137da785c83479b904de16e83a24dad" } }, { "其他新增功能": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ab26e2f3085d4a4fa978c28a555dda16" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ce7746d870354db6a08d1549cc77cdcc" } }, { @@ -16336,28 +23913,43 @@ { "安装Xcode开发工具": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-10c279d2876941e7b86070aa2aa7cb9e" } }, { "了解Xcode开发工具主界面": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e5cd37d51247486c85b9379e595ba6d1" } }, { "Xcode开发工具的使用技巧及常用快捷键": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-46375be500a944c49904342b223e0093" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bb56df26063b4fe98aace77b969d25b2" } }, { "创建第一个iOS项目": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-56514d9adf6741199ebe813ad4457b88" } }, { @@ -16367,31 +23959,49 @@ { "Git与Github简介": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-231bf01dadf84266b6c6581537c42969" } }, { "注册GitHub会员": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2560120eb0814b3da7f4bbcba945ac7a" } }, { "使用Xcode创建Git仓库": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f531242ac7fb49b6be21848430fb8cca" } }, { "用Xcode建立本地Git仓库与GitHub代码托管平台的关联": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9040f09fe6924fe5916d97ba387addd8" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-233c9d9137724d369432fa7cc2a33a03" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4ecf2449bb0f41a6accd1fd468a623a0" } }, { @@ -16405,16 +24015,25 @@ { "MVC设计模式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ac452379252942b888124f02ac5cee24" } }, { "代理设计模式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7ab490cf74c847c7aa6f6f18af7ee039" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-15ca56e9b0f04afbadc53a2cc047fa09" } }, { @@ -16424,16 +24043,25 @@ { "UIViewController的生命周期": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7b1225e0016f4ec1be62f84d9a5558ec" } }, { "UIViewController的视图层级结构": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ced3f6477a7a479a97ef0815c6838b77" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4094c9bf2167411aab720c5b57028620" } }, { @@ -16443,22 +24071,34 @@ { "使用UILabel在屏幕上创建一个标签控件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0f5b530796a5452b939ec41157e2152a" } }, { "自定义标签控件的相关属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d34fd87ffad14da09f222a7651398a68" } }, { "多行显示的UILabel控件与换行模式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-163b7373fe6e4491b3553ef736d14aba" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-14ad6c254c544101945c00a69ee10dbd" } }, { @@ -16468,16 +24108,25 @@ { "创建一个按钮改变屏幕颜色": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-248db8c95d7b4ed9a07ac5465559471b" } }, { "更加多彩的UIButton控件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-57bda64891744c5381fe2b92d6a136fe" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b719ec5eb6f840a8b1e4271813186a66" } }, { @@ -16487,28 +24136,43 @@ { "在屏幕上创建一个输入框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e40fc651d46c48158e9ba06ed08abe9b" } }, { "UITextField的常用属性介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6209e45651c34c808fff03c6a5648a45" } }, { "UITextField的代理方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f468119acd52480186d685cd8d89e6f8" } }, { "实现一个监听输入信息的用户名输入框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d915c02162b84ff4980db49434dd1843" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ce5d7492df21485997a078938e7bf46b" } }, { @@ -16518,22 +24182,34 @@ { "创建一个开关控件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b15f3530f9c846dba3299a4953928881" } }, { "为UISiwtch控件添加触发方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-66cf5eede6924e8ba0345b3e6617921e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-665f723415284c8e83b5627bf2924017" } }, { "分页控制器——UIPageControl": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-120a522ffe744fe4a5e5531bd05e5d57" } }, { @@ -16543,22 +24219,34 @@ { "UISegmentedControl基本属性的应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1d03603b21b94d4fa0dedf0a577fe202" } }, { "对UISegmentedControl中的按钮进行增、删、改操作": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5afd228dcc5b4431bea29f78a02f6596" } }, { "UISegmentedControl中按钮宽度的自适应": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a6d197ff08144796b18259a610b95c6d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1cf602bc3fc54525ab1827dd4bf200f4" } }, { @@ -16568,28 +24256,43 @@ { "UISlider的创建与常规设置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0089a5d56973458880170e58cb9576f8" } }, { "对UISlider添加图片修饰": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8b4d63ba846b437db2ee1482bf408d1d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2e42f3666bf3455994bd98a717b7d747" } }, { "活动指示器控件——UIActivityIndicatorView": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-14b26135f4924bfa986a2dffb90904d3" } }, { "进度条控件——UIProgressView": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b85bb8212b104ddfb9a006ade202879a" } }, { @@ -16599,16 +24302,25 @@ { "步进控制器的基本属性使用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3821f2e8a6774bbd8ef997f64a4ef892" } }, { "自定义UIStepper按钮图片": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-19f4f966582845ac87dfb61b92199934" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4a8cba1686944963b186d27fba2a5788" } }, { @@ -16618,16 +24330,25 @@ { "创建一个UIPickerView控件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f8eaf99878e9438b82172761a97018fa" } }, { "UIPickerView选中数据时的回调代理": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-99ce6d6ba0b147eaa23fd8af4e2c506d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b6d605f3b07d443d98cd3419fec2e070" } }, { @@ -16637,22 +24358,34 @@ { "创建圆角的控件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dac6af4da02946a08f36f982c011d0f4" } }, { "创建带边框的控件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-61e9f66e195e47d5ae3984cb8d93c775" } }, { "为控件添加阴影效果": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a5c566d7b49449e4b86c3b3e493d4dd4" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-51788ff24c4843c7abc074d650c7fdf6" } }, { @@ -16662,16 +24395,25 @@ { "UIAlertController的警告框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8fdcde16dfcf4e18bef92e97a26a9ceb" } }, { "UIAlertController之活动列表": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b8042576aa6a4ad6bf2d59442ae81a41" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-67f24c7db90e4180b6bfd5656116f80d" } }, { @@ -16681,31 +24423,49 @@ { "搜索栏控件——UISearchBar": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e6faed3826ca4f0789742cc2c123372f" } }, { "日期时间选择器——UIDatePicker": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-209766ba91e3447f9531592793ba6b89" } }, { "警告视图——UIAlertView": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b1df1045f2c745d88895750336be449e" } }, { "活动列表——UIActionSheet": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5569fc76c5a648e5a1882fe115a35559" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2dbbe953d2a545569f1cbd55c711bb67" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8da5fd55d23144ca94f64adf7f1c5691" } }, { @@ -16719,40 +24479,61 @@ { "导航控制器的工作原理": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-262fce2acf5541b6bdaa821308d76635" } }, { "使用导航控制器进行多界面搭建": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-65106b85a16c46aba799046ce810d7ba" } }, { "导航栏UINavigationBar": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9529304126964a55b74c0fcfe45fafc4" } }, { "导航按钮UIBarButtonItem": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c283045ecae84b5cbd4f96e9e66b3237" } }, { "导航控制器的工具栏": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ec41997d05f6448fa0c2430cce04ceff" } }, { "iOS 8系统之后导航控制器的一些有趣功能": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a721197d34404878946a5dd8ab81eee8" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d1d58294ddf147afa6e59f97506d3811" } }, { @@ -16762,22 +24543,34 @@ { "标签控制器的工作原理": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-157eb75f77a24d4b83ea5ed8c1fdbb00" } }, { "标签控制器的基础用法解析": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-be4c56fd710a4731b7e71e0f795978a2" } }, { "关于UITabBarItem的使用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-081200c59eca4af4b7a8beee04cc009e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c8fe931ab65b486aafb77ab570a086f0" } }, { @@ -16787,16 +24580,25 @@ { "使用UIScrollView展示视图内容": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-86043613880b4e71ad83f19227557573" } }, { "UIScrollView的代理方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-98735770a9104aaca4568bbf76941d15" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f5cb008fb40a41a1b70d0e75e2cdc2db" } }, { @@ -16806,40 +24608,61 @@ { "App网络传输安全策略": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-43506ded69c04fc0a8013460bed31c2d" } }, { "通过网络请求加载UIWebView": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d8c0dcf2255545bd980a5cb4674dfac2" } }, { "通过HTML字符串加载UIWebView": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f5ee165b59da463183c32d9a7c73e48b" } }, { "通过Data数据加载UIWebView": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-82debebae0d74042943225326fe8c2af" } }, { "UIWebView中常用方法解析": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ac75fef828804edc9822e19d467007ac" } }, { "UIWebView的代理方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7fe4d5074bc04389bb413ccc26d2e875" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-012318ac442d4fa0a7703ee6f057f029" } }, { @@ -16849,40 +24672,61 @@ { "UITableView的创建与复用机制": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3fcce8acff1148b09d64cabb418cb7e8" } }, { "创建一个表格视图UITableView": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bcd4532de7c74d04ad17dbdbbfbbf053" } }, { "关于表格数据的载体UITableViewCell": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-606fbd095b30434c9225298e93acf538" } }, { "设置UITableView的行高和头尾视图": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d3a158bb3aaf40f8b3736bc817b93b88" } }, { "UITableView的用户交互行为": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dd47287fbb324e61acd22de71286cbe5" } }, { "为UITableView添加索引栏": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f7c18a6197284c58b5ca662474b35d7b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1ffc1a677e6a4e0db2571d59d7eba07f" } }, { @@ -16892,34 +24736,52 @@ { "UICollectionView控件的优势与布局方式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-256fdad5bdc74fcbaf40c4b37561050b" } }, { "使用UICollectionView进行九宫格式的布局": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b2c649a1ba614b42abd383ce8253db91" } }, { "创建更加灵活的流式布局": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0e3ad46cb6a5452c9e4d49e029b6122b" } }, { "自定义UICollectionViewFlowLayout进行参差瀑布流布局": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bfe676576561444d97824b27b90a5969" } }, { "使用UICollectionView进行圆环布局": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-069ec26daf7243849b596791145967fb" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5b157639c63749d882ba2763b0557058" } }, { @@ -16929,25 +24791,40 @@ { "应用内评价组件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5a50ba84def54b0192c4ccca879ad90d" } }, { "进行系统拨号与短信界面的调用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c211eb2b02234b8997ec1901049c21fd" } }, { "拖拽交互体验": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aeeea69db6e94f50b6279480012bc64c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6c25667799bf4f06bba68a08acb230bf" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0c1f43a7dbcb4b7a8dc4bb8ffe7c9baf" } }, { @@ -16961,28 +24838,43 @@ { "申请一个免费的API服务": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1ee07397b2424e8685d01769168a91a9" } }, { "使用NSURLConnection进行API服务数据的获取": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-274a06870aec4f108f48cf199bcd5f34" } }, { "使用NSURLConnection进行异步网络请求": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e366e1b084b64719ac60e50703753b15" } }, { "使用NSURLConnection类通过代理回调的方式异步请求": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d4059e521ab342f48427806d6a6c64ad" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1a6f11a2bd0647fabd7f1bd7a04e8f2f" } }, { @@ -16992,16 +24884,25 @@ { "设计自定义的网络请求连接类": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e2f384c16fbe43c8a172552c8e3bbcb1" } }, { "设计自定义的网络请求管理类": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ba5bbc8d21f9417b8aa555d17a78934d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-146ef55ef8d14796a10c0e5f10c3fd67" } }, { @@ -17011,22 +24912,34 @@ { "JSON数据简介": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ad926953ebb94774af99d8fc1cd90d2d" } }, { "在iOS中解析JSON数据": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-87c55cae153a4f84adc89cab9549a5e9" } }, { "数据模型Model类的设计": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b5af342b0a4646c2b1b873916e3c4efd" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-346b2698154e4a79b8e8279857d06a65" } }, { @@ -17036,16 +24949,25 @@ { "在MAC上安装CocoaPods工具": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3df5ca5a98d74be2a61f8414d3c36a8d" } }, { "用CocoaPods搭建一个使用第三方网络请求框架AlamoFire的工程": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e79bc92e9fe1400fb4ed0e3be22ab39e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b16863f22eca4df0b9029d9df529b475" } }, { @@ -17055,19 +24977,31 @@ { "详解HTTP/HTTPS协议": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-aee915ffef9e4380a665827a22ab3cca" } }, { "使用AlamoFire进行网络请求": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f1411c61019b4bce946ea3dc997ff71c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e323c3d082f94134b6519cb027d79136" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-06053b2645e5443a8e76838061836e63" } }, { @@ -17081,22 +25015,34 @@ { "使用AVAudioPlayer进行MP3音频文件的播放": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0ef74bff0de4454793ebcc5f9a4a6be2" } }, { "进行音频播放相关属性的控制": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fc6cac384af041e69b772337877ceac8" } }, { "后台播放音频及用户交互的优化": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0ef1e92d3d3e44b48459fdcc3e3643c3" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ce682b5cd49549ac82c19c2da87b83a5" } }, { @@ -17106,22 +25052,34 @@ { "使用MPMoviePlayerController向应用中嵌入视频模块": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c8294eb72cb04a3fbccd6381ab61d6a8" } }, { "MPMoviePlayerController常用属性与方法解析": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-142bbc4f23ec4f07b69fd1f9683faef3" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ee5385cb19254474a54d718d883996b1" } }, { "视频播放器视图控制器——MPMoviePlayerViewController": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-09e2d32f84fb4086bff9390643ad150c" } }, { @@ -17131,19 +25089,31 @@ { "使用AVPlayerViewController进行视频播放": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e1a07dc04f0d44519ae901440e9d2407" } }, { "iPad的画中画播放技术": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c62de49b40514a3e9f43353a5dec6e72" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c060493745c9492093005a7579d254b9" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0849b1c9c0424298957eee39db320c45" } }, { @@ -17153,7 +25123,10 @@ { "使用UIImageView播放图片组帧动画": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-199f95274a924cb7acd61931d5475dfa" } }, { @@ -17163,28 +25136,43 @@ { "执行UIView层过渡动画的3个类方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e1ecf3beecb546d88c52d83863df0307" } }, { "创建UIView层的阻尼动画": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-be8fcf6735e348a59b85e963159a721f" } }, { "动画参数配置与组合动画": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bb982eab38304508b71e67cf79119217" } }, { "UIView层过渡动画支持的属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ed8edb0865b24f15a144cf401b42ec91" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-57d41f9d1b514e20b3bd22db531d3e4e" } }, { @@ -17194,16 +25182,25 @@ { "使用commit方式进行UIView层过渡动画的创建": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e7a27f6de4fa4ec18d3ee7df9998b51c" } }, { "两种UIView层动画创建方式的优劣": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-85125f1168314a5890ca8a9f80569b7b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bf5c2cfa8f89436796d7d0698da91a3b" } }, { @@ -17213,16 +25210,25 @@ { "重绘UIView视图时使用的转场动画": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fec3233845b94305b5d8299ac13fddb9" } }, { "切换UIView视图时使用的转场动画": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cebdd822a63f436aa1308e2891236619" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-46cd235e635244b094e8bbbea252405f" } }, { @@ -17232,70 +25238,106 @@ { "锚点对视图控件几何位置的影响": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a6b23b93ad554d53aba2df4757d54bcb" } }, { "色彩梯度层——CAGradientLayer": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-61a826b65bb34c8183191f0705dc12ee" } }, { "视图拷贝层——CAReplicatorLayer": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-177e61146a184f79b734f842d8b415b8" } }, { "图形渲染层——CAShapeLayer": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9aae0bdd4eb44c688751f3731a632bf9" } }, { "文本绘制层——CATextLayer": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e3220b6e314b4cc1a72e1fe6207c3799" } }, { "CAAnimation动画体系介绍": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-41af2e5142094902956d38d35d8759fe" } }, { "使用CABasicAnimation创建基础动画": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-43ac2a554088410198c8fd4e98b992d1" } }, { "使用CAKeyframeAnimation类创建关键帧动画": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b4efd4f3a65d4b33ad024a9c17f32063" } }, { "CALayer层的转场动画——CATransition": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-401634ca79c64a6f99bee28f1e994260" } }, { "CALayer层的组合动画——CAAnimationGroup": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3d0f1ac772ab4888841a1684f0262860" } }, { "CATransform3D变换的应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6b95d240c89c477fbf56409a4220b8c5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e74bfad1173a449080e24b01e3cc099b" } }, { @@ -17305,22 +25347,34 @@ { "粒子发射器——CAEmitterLayer": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bcb38d1f5842420dab97eeccbd4dd21a" } }, { "粒子单元——CAEmitterCell": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1b7fad66d2a94d6bbf01c63e5009cfb0" } }, { "创建粒子火焰动画": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-05c2013b75dd4fb6a02c7226531ac58b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b1c710709e3f4407950acde45185fb78" } }, { @@ -17330,19 +25384,31 @@ { "使用UIWebView进行GIF动态图播放": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c6ab19b4852f4473aca3af03f6786bf6" } }, { "使用UIImageView帧动画进行GIF动态图播放": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2728e9d9ceab432d832bbc97b3a7bb36" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-32d0815884a34e288a80f10a60d74608" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-65e1cd5ca1a84fef83309f59a1842706" } }, { @@ -17356,28 +25422,43 @@ { "使用手机密码为应用程序添加安全验证": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-42d67eeff4db4d56bced20a6bed89bb9" } }, { "使用用户指纹为应用程序添加安全验证": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4f6f321ab29c408ca1e3630c6fcc3aae" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7356e44f634041d0a4932785fc378884" } }, { "使用加速度传感器、螺旋仪传感器与磁力传感器获取设备空间状态": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-85245f309d8e499cad2eb682acc804e0" } }, { "距离传感器的应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f5eb34e2dc1349d6afc51df3d9b88767" } }, { @@ -17387,16 +25468,25 @@ { "中心设备管理类CBCentealManager": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-100c87099dda4039976acaf7e9cbe455" } }, { "外围设备管理类CBPeripheraManager": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-17fab65515394f4e8044797b22d72652" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ed9de7ab1b1d43d4bf675511ef11456a" } }, { @@ -17406,37 +25496,58 @@ { "进行设备地理位置定位": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-62132b620e094964875270401883eabe" } }, { "原生地图开发技术": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b73b212eeea74e82b3a40c4f2edc1602" } }, { "在地图中添加大头针及标注": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7b4170ea0f0c41d19c93072b91daada2" } }, { "在地图视图中添加覆盖物": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6d6a5b087f1b4d80baa8572f9e9eb155" } }, { "在地图中进行线路导航与附近兴趣点检索": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-23ed88d987b64fffa8df12cdfb55f45f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f719bba1e12d4cffbcb7199455ed2f2f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-156e7ef916084e9ab9ad3981cd51ce36" } }, { @@ -17450,16 +25561,25 @@ { "通过代码设置视图控件的UIViewAutoresizing模式": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e054e56d339e4d99931c542ead7f2c0a" } }, { "在xib文件中可视化地配置控件的autoresizing属性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5c5792b70af342f0b2f8d365441cb0de" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5ecbbcc9f9834bf1aa8ea54b86da0817" } }, { @@ -17469,49 +25589,76 @@ { "初识autolayout": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-508c628f970745fea378319b7f601007" } }, { "autolayout的属性意义与一个简单的自动布局示例": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9f1fbf12ecaf4cdda23b9dbb084597fe" } }, { "使用代码进行autolayout布局": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8c28a10aa6744f1a8daf38b533a4a52a" } }, { "使用格式化的字符串进行autolayout布局对象的创建": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b4ba8630294542078f846b9e063b2e50" } }, { "与约束相关的几个方法": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e0d43343727444f4b508f70779f7bf10" } }, { "使用autolayout设计一个高度自适应的聊天输入框及动画优化": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-51446ac9f46f4926bcd65634ba08b186" } }, { "使用第三方库SnapKit进行autolayout约束布局": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-e16c79fbfaa94a8e9b8bc0eabb92c943" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9255dfcdc6964f4692b4d1a927c0755c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7094eefa9c2441c18424964f43ed078e" } }, { @@ -17525,22 +25672,34 @@ { "在工程中读取Plist文件数据": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3dc049267b41492196fa463f48ca3ff5" } }, { "在程序沙盒Documents目录中创建和使用plist文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9ed0c1481fa84daeaa9fe071e32f49b2" } }, { "使用NSUserDefaults类进行数据持久化": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-fb90e605b69847a88391d3ef6f54c036" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ac8dbe3d74134fe0808c9acd7238331e" } }, { @@ -17550,28 +25709,43 @@ { "进行单一系统数据类型的归档与解归档操作": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b50675b474944ecfbc5f8bd074599164" } }, { "对多个对象进行数据归档": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ab184425c98d41329bc5ac8b5643c07c" } }, { "进行自定义数据模型的归档": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7150c0f7ca184bb0a00620077a82f580" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-291b40731097441e9383b4418ea040d7" } }, { "小型数据库SQLite在iOS开发中的应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-bb548aeca61a4f18b01ffd1c1893860e" } }, { @@ -17581,28 +25755,43 @@ { "使用CoreData设计数据模型": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d4fd53838cd24dbea4382ee474775ad7" } }, { "CoreData编程框架中3个重要的类": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-cab7abf2b7bf40858243d587252da2e1" } }, { "CoreData编程框架的数据操作": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b74dfed102974914ab98a0569af468be" } }, { "使用CoreData进行数据与页面的绑定": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9a51634a5614471c88738cc74ec35156" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-386ace16e0854986a3afbde293762781" } }, { @@ -17612,19 +25801,31 @@ { "为网络请求设置缓存策略": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3bd4ed2775bd4432a292247319dccfe0" } }, { "应用缓存管理类NSURLCache简介": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6b84bda42eb24937a34119bc203aef51" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-03656f17537445a093f9d9cddddeca1d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-894f733d0725408d8f74c74c3e328dc4" } }, { @@ -17638,22 +25839,34 @@ { "使用自定义断点进行代码调试": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-62109bf1565e4ac89b93ec5336cb0c2e" } }, { "添加全局异常断点": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-c6e3006f0d8247d1b14de28086ccdfa7" } }, { "使用LLDB调试器进行程序调试": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7aadb125c9e9480096a1669f1bb6c06e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6cd22f54f9ab45f9825090e6e74256aa" } }, { @@ -17663,16 +25876,25 @@ { "几种类型的开发者账号": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7d0fd6cffd324923b503deac3c1d48ea" } }, { "申请开发者账号的过程": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6c730f89d4d843cdb42799da043c596e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9509ddbfd0fc4d08a0f945c201124459" } }, { @@ -17682,19 +25904,31 @@ { "在iTunes Connect中进行应用的创建与配置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6c1544aeec7b4737a30dee8496898288" } }, { "使用Xcode打包与提交iTunes": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-b345d09bd4994e89bbc40d9444770b27" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5206c78962974b2389f289e95a974caa" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-1e94b1835d354a11a052adbfc8e09ef6" } }, { @@ -17708,16 +25942,25 @@ { "通知类Notification简介": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-55bbb93a51c246c89dac798c61bf738d" } }, { "通知中心NotificationCenter应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-47151582b8114bc987ae8a03521a26cb" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6f32dd5c5a9146dea26c0d5af5d7f589" } }, { @@ -17727,22 +25970,34 @@ { "使用Thread进行线程管理": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dd2a1d8bd4fc46e099213c7343c4cad2" } }, { "使用Operation类与OperationQueue类进行多任务管理": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-a36ff9c932f94861a33939ec4c159965" } }, { "iOS中GCD编程技术简介": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d8aeec8f76714ad2888f34ac2bfbd3ef" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-63b7b5ba8f4c4191ad507ec68a71e731" } }, { @@ -17752,16 +26007,25 @@ { "3D Touch的3大模块": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-28e8b35e2d7842f7bff7d8362afc6e7c" } }, { "Home Screen Quick Action使用与相关API详解": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-322903d459f3427b86dca6397faa414e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f8aaa560c124430cb32b6db802176fb8" } }, { @@ -17771,81 +26035,115 @@ { "SpeechFramework框架中的重要类": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-15c69f6b3f614df7a090b1c4fed659ef" } }, { "申请用户语音识别权限与进行语音识别请求": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4e42d2d5de9e417eb433e797f325af1c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-58d8cf43f8244be0849ecf00a7c1af3f" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-97e2f69294014f188f525173b844596b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "跨平台开发": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-6e6361de04f8415c98e987236d0faa9b", "keywords": [], "children": [ { "react native": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f9627f2c2bf4477bbe76fe153b8e2b03" } }, { "NativeScript": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ccb0b9ac9a7a4cc6aafca51a0066b5c0" } }, { "Flutter": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-82c5c7a59ae04d1d9d700db5556d18f6" } }, { "uni-app": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0ef6482ab7114ffcb69a8de01ce3a279" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "桌面应用开发(GUI)": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-5430a29bfa65436485a6e7bbc3e6df9d", "keywords": [], "children": [ { "Java桌面应用开发": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-e9813c5666744fddbb9b8212e6508b95", "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [] } }, { ".net桌面应用程序开发": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-c9eb066f44244cd7a8254636601a3280", "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [] } }, { "跨平台桌面应用程序开发": { - "node_id": "569d5e11c4fc5de7844053d9a733c5e8", + "node_id": "web-c5ed0d73b42142c49a02bd02290b2a2d", "keywords": [], "children": [ { @@ -17859,7 +26157,10 @@ { "NW.js和Electron的起源": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4022e3479f5e47b59c08e97da7a5cc6f" } }, { @@ -17869,16 +26170,25 @@ { "使用NW.js构建Hello World应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-7b134a258cf34c589ee5b8060794f2d0" } }, { "NW.js有哪些特性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-092b42568dc34c2a835ceed2e0dcd74e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ac41160e55fd46e88b7dbb7f9b8f854d" } }, { @@ -17888,22 +26198,34 @@ { "Electron是如何工作的以及它和NW.js的区别是什么": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-328363be89b04a81bc9a1529b252682b" } }, { "使用Electron开发Hello World应用": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8fc270dc6f1942b2b2d6665427e3480f" } }, { "Electron有哪些特性": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f09903263d734b599fec1ac0f3080292" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-856203177cc949c0aa009df2d801fa46" } }, { @@ -17913,43 +26235,67 @@ { "Slack": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-4a0e4a08f55a490fb83ae60910cfc3be" } }, { "Light Table": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-6cee575d8f78475c85d6197ccb673ec0" } }, { "Game Dev Tycoon": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-497d3a9a04a04997bda0d8abd18fd812" } }, { "Gitter": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-07caff9efd36481dbf050e1bc10a3d48" } }, { "Macaw": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-36a1365f63ab42c69515f17721c64e8f" } }, { "Hyper": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2c188645c8b947d482092c3f7fd99bab" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ca781f4893f74812b31262e1cefa4be8" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5400690ffb5748de85a2ce7ed292f7c5" } }, { @@ -17963,22 +26309,34 @@ { "安装NW.js和Electron": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-16b0465ecf664364af0e0fae35d1e310" } }, { "为NW.js版本的应用创建文件和文件夹": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-951e1164cb594ab7a19866ea26e464af" } }, { "为Electron版本的应用创建文件和文件夹": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-2d2f97a58fc34ee6b8ca37089df54fc1" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f0c916f6f7c241899b0302ca69a215b2" } }, { @@ -17988,19 +26346,31 @@ { "在工具条中展示用户个人文件夹信息": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f97a4399a0644f33884938c90bd676cc" } }, { "显示用户个人文件夹中的文件和文件夹": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-54470cff980c4f50b65fd3e5f842ee1d" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-566e2f669b6f4b02b2c38a42909435c5" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8e83fbad41134fc5932fe51838762d51" } }, { @@ -18014,16 +26384,25 @@ { "重构代码": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-5d233eeb3a6b4fe2ad7783dc5cf55b95" } }, { "处理对文件夹的双击操作": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d6684836f2594bec8a6c51c5a8d1af40" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-0ccf965e49934f5db4ca47a638649e51" } }, { @@ -18033,22 +26412,34 @@ { "在工具条中增加搜索框": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f8b569c38fca463d8353635a2cffc1cf" } }, { "引入一个内存搜索库.65": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-dcf2e6f3640c46b0871d8123366574a7" } }, { "在界面上触发搜索功能.67": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ffbf4ce4eb9d4222ac68103e98f2b88e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-ca832cfc3dbc4200ab3895acb9f8833f" } }, { @@ -18058,25 +26449,40 @@ { "实现当前文件夹路径可单击": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-59c1dd67f1d54a2c84dd69d9a013f37d" } }, { "让应用随着文件夹路径的改变显示对应的文件夹内容": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-af8db44e10574c86b0b1e42fa7cf0a23" } }, { "实现使用默认应用打开对应的文件": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9f889546d8cd443cb07c2750193cc0ac" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d521f4b4a2eb406c8564bd6dce88a8b4" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-80bd494607424a8caeb15ee4485af954" } }, { @@ -18086,7 +26492,10 @@ { "对应用进行与分发相关的设置": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-29b6f563c3a54ccfa5a1c902c34a214b" } }, { @@ -18096,22 +26505,34 @@ { "使用一种NW.js的构建工具": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d691b040de904845853501a5feb11c51" } }, { "使用一种Electron的构建工具": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-3556849334234920a6ab985223eea938" } }, { "设置应用的图标": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-8a0f3ed226524bbcbe64730904335280" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-f1acf5aa86504f699bf6e1d7592f7e76" } }, { @@ -18121,39 +26542,65 @@ { "Windows.操作系统": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-d9281a7128ec4ffbb1d575cb04a4a8f5" } }, { "Linux.操作系统": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-92abf65fddfa403abd30d112f8461057" } }, { "Mac.OS.系统": { "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-06fd9e10e16c4a73bb60dcf97194fa4c" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-254af460b63c42b18467a399b18ec94b" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-050c03c934c74a70bc7dc3f2074de73e" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [], + "node_id": "web-9eabfcde6a2148acaa715a8c93486047" } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } \ No newline at end of file diff --git a/src/tree.py b/src/tree.py index 3eba573ac6a531272319ddf9cc9655ed85696e9f..3cea396c74f9739943f446f469561b51f0bc66a3 100644 --- a/src/tree.py +++ b/src/tree.py @@ -1,13 +1,44 @@ -from genericpath import exists import json +import logging import os -import uuid +import re +import subprocess import sys +import uuid import re +id_set = set() +logger = logging.getLogger(__name__) +logger.setLevel(logging.INFO) +handler = logging.StreamHandler(sys.stdout) +formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s') +handler.setFormatter(formatter) +logger.addHandler(handler) + + +def search_author(author_dict, username): + for key in author_dict: + names = author_dict[key] + if username in names: + return key + return username + + +def user_name(md_file, author_dict): + ret = subprocess.Popen([ + "git", "log", md_file + ], stdout=subprocess.PIPE) + lines = list(map(lambda l: l.decode(), ret.stdout.readlines())) + author_lines = [] + for line in lines: + if line.startswith('Author'): + author_lines.append(line.split(' ')[1]) + author_nick_name = author_lines[-1] + return search_author(author_dict, author_nick_name) + def load_json(p): - with open(p, 'r') as f: + with open(p, 'r', encoding="utf-8") as f: return json.loads(f.read()) @@ -17,13 +48,23 @@ def dump_json(p, j, exist_ok=False, override=False): if not override: return else: - print(f"{p} already exist") + logger.error(f"{p} already exist") sys.exit(0) - with open(p, 'w') as f: + with open(p, 'w+', encoding="utf8") as f: f.write(json.dumps(j, indent=2, ensure_ascii=False)) +def ensure_config(path): + config_path = os.path.join(path, "config.json") + if not os.path.exists(config_path): + node = {"keywords": []} + dump_json(config_path, node, exist_ok=True, override=False) + return node + else: + return load_json(config_path) + + def parse_no_name(d): p = r'(\d+)\.(.*)' m = re.search(p, d) @@ -37,86 +78,348 @@ def parse_no_name(d): return no, dir_name -def gen_tree(data_path): - root = {} - - def gen_node_id(): - return ''.join(str(uuid.uuid5(uuid.NAMESPACE_URL, 'skill_tree')).split('-')) - - def list_dir(p): - v = os.listdir(p) - v.sort() - for no_name in v: - no_dir = os.path.join(p, no_name) - if os.path.isdir(no_dir): - yield no_dir, no_name - - def ensure_node_id(cfg_path, cfg): - if cfg.get('node_id') is None: - cfg['node_id'] = gen_node_id() - dump_json(cfg_path, cfg, exist_ok=True, override=True) - - def make_node(name, node_id, keywords, children=None): - node = {} - node_children = children or [] - node[name] = { - 'node_id': node_id, - 'keywords': keywords, - 'children': node_children +def check_export(base, cfg): + flag = False + exports = [] + for export in cfg.get('export', []): + ecfg_path = os.path.join(base, export) + if os.path.exists(ecfg_path): + exports.append(export) + else: + flag = True + if flag: + cfg["export"] = exports + return flag + + +class TreeWalker: + def __init__( + self, root, + tree_name, + title=None, + log=None, + authors=None, + enable_notebook=None, + ignore_keywords=False + ): + self.ignore_keywords = ignore_keywords + self.authors = authors if authors else {} + self.enable_notebook = enable_notebook + self.name = tree_name + self.root = root + self.title = tree_name if title is None else title + self.tree = {} + self.logger = logger if log is None else log + + def walk(self): + root = self.load_root() + root_node = { + "node_id": root["node_id"], + "keywords": root["keywords"], + "children": [], + "keywords_must": root["keywords_must"], + "keywords_forbid": root["keywords_forbid"] + } + self.tree[root["tree_name"]] = root_node + self.load_levels(root_node) + self.load_chapters(self.root, root_node) + for index, level in enumerate(root_node["children"]): + level_title = list(level.keys())[0] + level_node = list(level.values())[0] + level_path = os.path.join(self.root, f"{index + 1}.{level_title}") + self.load_chapters(level_path, level_node) + for index, chapter in enumerate(level_node["children"]): + chapter_title = list(chapter.keys())[0] + chapter_node = list(chapter.values())[0] + chapter_path = os.path.join( + level_path, f"{index + 1}.{chapter_title}") + self.load_sections(chapter_path, chapter_node) + for index, section_node in enumerate(chapter_node["children"]): + section_title = list(section_node.keys())[0] + full_path = os.path.join( + chapter_path, f"{index + 1}.{section_title}") + if os.path.isdir(full_path): + self.check_section_keywords(full_path) + self.ensure_exercises(full_path) + + tree_path = os.path.join(self.root, "tree.json") + dump_json(tree_path, self.tree, exist_ok=True, override=True) + return self.tree + + def sort_dir_list(self, dirs): + result = [self.extract_node_env(dir) for dir in dirs] + result.sort(key=lambda item: item[0]) + return result + + def load_levels(self, root_node): + levels = [] + for level in os.listdir(self.root): + if not os.path.isdir(level): + continue + level_path = os.path.join(self.root, level) + num, config = self.load_level_node(level_path) + levels.append((num, config)) + + levels = self.resort_children(self.root, levels) + root_node["children"] = [item[1] for item in levels] + return root_node + + def load_level_node(self, level_path): + config = self.ensure_level_config(level_path) + num, name = self.extract_node_env(level_path) + + result = { + name: { + "node_id": config["node_id"], + "keywords": config["keywords"], + "children": [], + "keywords_must": config["keywords_must"], + "keywords_forbid": config["keywords_forbid"] + } + } + + return num, result + + def load_chapters(self, base, level_node): + chapters = [] + for name in os.listdir(base): + full_name = os.path.join(base, name) + if os.path.isdir(full_name): + num, chapter = self.load_chapter_node(full_name) + chapters.append((num, chapter)) + + chapters = self.resort_children(base, chapters) + level_node["children"] = [item[1] for item in chapters] + return level_node + + def load_sections(self, base, chapter_node): + sections = [] + for name in os.listdir(base): + full_name = os.path.join(base, name) + if os.path.isdir(full_name): + num, section = self.load_section_node(full_name) + sections.append((num, section)) + + sections = self.resort_children(base, sections) + chapter_node["children"] = [item[1] for item in sections] + return chapter_node + + def resort_children(self, base, children): + children.sort(key=lambda item: item[0]) + for index, [number, element] in enumerate(children): + title = list(element.keys())[0] + origin = os.path.join(base, f"{number}.{title}") + posted = os.path.join(base, f"{index + 1}.{title}") + if origin != posted: + self.logger.info(f"rename [{origin}] to [{posted}]") + os.rename(origin, posted) + return children + + def ensure_chapters(self): + for subdir in os.listdir(self.root): + self.ensure_level_config(subdir) + + def load_root(self): + config_path = os.path.join(self.root, "config.json") + if not os.path.exists(config_path): + config = { + "tree_name": self.name, + "keywords": [], + "node_id": self.gen_node_id(), + "keywords_must": [], + "keywords_forbid": [] + } + dump_json(config_path, config, exist_ok=True, override=True) + else: + config = load_json(config_path) + flag, result = self.ensure_node_id(config) + if flag: + dump_json(config_path, result, exist_ok=True, override=True) + + return config + + def ensure_level_config(self, path): + config_path = os.path.join(path, "config.json") + if not os.path.exists(config_path): + config = { + "node_id": self.gen_node_id() + } + dump_json(config_path, config, exist_ok=True, override=True) + else: + config = load_json(config_path) + flag, result = self.ensure_node_id(config) + if flag: + dump_json(config_path, config, exist_ok=True, override=True) + return config + + def ensure_chapter_config(self, path): + config_path = os.path.join(path, "config.json") + if not os.path.exists(config_path): + config = { + "node_id": self.gen_node_id(), + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] + } + dump_json(config_path, config, exist_ok=True, override=True) + else: + config = load_json(config_path) + flag, result = self.ensure_node_id(config) + if flag: + dump_json(config_path, config, exist_ok=True, override=True) + return config + + def ensure_section_config(self, path): + config_path = os.path.join(path, "config.json") + if not os.path.exists(config_path): + config = { + "node_id": self.gen_node_id(), + "keywords": [], + "children": [], + "export": [] + } + dump_json(config_path, config, exist_ok=True, override=True) + else: + config = load_json(config_path) + flag, result = self.ensure_node_id(config) + if flag: + dump_json(config_path, result, exist_ok=True, override=True) + return config + + def ensure_node_id(self, config): + flag = False + if "node_id" not in config or \ + not config["node_id"].startswith(f"{self.name}-") or \ + config["node_id"] in id_set: + new_id = self.gen_node_id() + id_set.add(new_id) + config["node_id"] = new_id + flag = True + + for child in config.get("children", []): + child_node = list(child.values())[0] + f, _ = self.ensure_node_id(child_node) + flag = flag or f + + return flag, config + + def gen_node_id(self): + return f"{self.name}-{uuid.uuid4().hex}" + + def extract_node_env(self, path): + try: + _, dir = os.path.split(path) + self.logger.info(path) + number, title = dir.split(".", 1) + return int(number), title + except Exception as error: + self.logger.error(f"目录 [{path}] 解析失败,结构不合法,可能是缺少序号") + # sys.exit(1) + raise error + + def load_chapter_node(self, full_name): + config = self.ensure_chapter_config(full_name) + num, name = self.extract_node_env(full_name) + result = { + name: { + "node_id": config["node_id"], + "keywords": config["keywords"], + "children": [], + "keywords_must": config["keywords_must"], + "keywords_forbid": config["keywords_forbid"] + } } - return node, node_children - - # 根节点 - cfg_path = os.path.join(data_path, 'config.json') - cfg = load_json(cfg_path) - ensure_node_id(cfg_path, cfg) - tree_node = { - "node_id": cfg['node_id'], - "keywords": cfg['keywords'], - "children": [] - } - root[cfg['tree_name']] = tree_node - - # 难度节点 - for level_no_dir, level_no_name in list_dir(data_path): - print(level_no_dir) - no, level_name = parse_no_name(level_no_name) - cfg_path = os.path.join(level_no_dir, 'config.json') - cfg = load_json(cfg_path) - ensure_node_id(cfg_path, cfg) - - level_node, level_node_children = make_node( - level_name, cfg['node_id'], cfg['keywords']) - tree_node['children'].append(level_node) - - # 章节点 - for chapter_no_dir, chapter_no_name in list_dir(level_no_dir): - no, chapter_name = parse_no_name(chapter_no_name) - cfg_path = os.path.join(chapter_no_dir, 'config.json') - ensure_node_id(cfg_path, cfg) - cfg = load_json(cfg_path) - - chapter_node, chapter_node_children = make_node( - chapter_name, cfg['node_id'], cfg['keywords']) - level_node_children.append(chapter_node) - - # 知识点 - for section_no_dir, section_no_name in list_dir(chapter_no_dir): - no, section_name = parse_no_name(section_no_name) - cfg_path = os.path.join(section_no_dir, 'config.json') - ensure_node_id(cfg_path, cfg) - cfg = load_json(cfg_path) - - section_node, section_node_children = make_node( - section_name, cfg['node_id'], cfg['keywords'], cfg['children']) - chapter_node_children.append(section_node) - - # 确保习题分配了习题ID - for export in cfg['export']: - if export.get('exercise_id') is None: - export['exercise_id'] = gen_node_id() - dump_json(cfg_path, cfg, exist_ok=True, override=True) - - # 保存技能树骨架 - tree_path = os.path.join(data_path, 'tree.json') - dump_json(tree_path, root, exist_ok=True, override=True) + return num, result + + def load_section_node(self, full_name): + config = self.ensure_section_config(full_name) + num, name = self.extract_node_env(full_name) + result = { + name: { + "node_id": config["node_id"], + "keywords": config["keywords"], + "children": config.get("children", []), + "keywords_must": config["keywords_must"], + "keywords_forbid": config["keywords_forbid"] + } + } + # if "children" in config: + # result["children"] = config["children"] + return num, result + + def ensure_exercises(self, section_path): + config = self.ensure_section_config(section_path) + flag = False + for e in os.listdir(section_path): + base, ext = os.path.splitext(e) + _, source = os.path.split(e) + if ext != ".md": + continue + mfile = base + ".json" + meta_path = os.path.join(section_path, mfile) + md_file = os.path.join(section_path, e) + self.ensure_exercises_meta(meta_path, source, md_file) + export = config.get("export", []) + if mfile not in export and self.name != "algorithm": + export.append(mfile) + flag = True + config["export"] = export + + if flag: + dump_json(os.path.join(section_path, "config.json"), + config, True, True) + + for e in config.get("export", []): + full_name = os.path.join(section_path, e) + exercise = load_json(full_name) + if "exercise_id" not in exercise or exercise.get("exercise_id") in id_set: + eid = uuid.uuid4().hex + exercise["exercise_id"] = eid + dump_json(full_name, exercise, True, True) + else: + id_set.add(exercise["exercise_id"]) + + def ensure_exercises_meta(self, meta_path, source, md_file): + _, mfile = os.path.split(meta_path) + meta = None + if os.path.exists(meta_path): + with open(meta_path) as f: + content = f.read() + if content: + meta = json.loads(content) + if "exercise_id" not in meta: + meta["exercise_id"] = uuid.uuid4().hex + if "notebook_enable" not in meta: + meta["notebook_enable"] = self.default_notebook() + if "source" not in meta: + meta["source"] = source + if "author" not in meta: + meta["author"] = user_name(md_file, self.authors) + if "type" not in meta: + meta["type"] = "code_options" + + if meta is None: + meta = { + "type": "code_options", + "author": user_name(md_file, self.authors), + "source": source, + "notebook_enable": self.default_notebook(), + "exercise_id": uuid.uuid4().hex + } + dump_json(meta_path, meta, True, True) + + def default_notebook(self): + if self.enable_notebook is not None: + return self.enable_notebook + if self.name in ["python", "java", "c"]: + return True + else: + return False + + def check_section_keywords(self, full_path): + if self.ignore_keywords: + return + config = self.ensure_section_config(full_path) + if not config.get("keywords", []): + self.logger.error(f"节点 [{full_path}] 的关键字为空,请修改配置文件写入关键字") + # sys.exit(1)