{"id":21989021,"url":"https://github.com/imweb/fis3-prepackager-imweb-ques","last_synced_at":"2026-05-10T05:04:08.032Z","repository":{"id":57237351,"uuid":"45381124","full_name":"imweb/fis3-prepackager-imweb-ques","owner":"imweb","description":"fis3 prepackager plugin for ques","archived":false,"fork":false,"pushed_at":"2016-02-24T02:20:36.000Z","size":80,"stargazers_count":2,"open_issues_count":1,"forks_count":0,"subscribers_count":20,"default_branch":"master","last_synced_at":"2025-06-17T10:46:36.446Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/imweb.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-11-02T08:20:24.000Z","updated_at":"2016-01-13T03:00:37.000Z","dependencies_parsed_at":"2022-08-26T15:10:39.834Z","dependency_job_id":null,"html_url":"https://github.com/imweb/fis3-prepackager-imweb-ques","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/imweb/fis3-prepackager-imweb-ques","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imweb%2Ffis3-prepackager-imweb-ques","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imweb%2Ffis3-prepackager-imweb-ques/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imweb%2Ffis3-prepackager-imweb-ques/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imweb%2Ffis3-prepackager-imweb-ques/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/imweb","download_url":"https://codeload.github.com/imweb/fis3-prepackager-imweb-ques/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imweb%2Ffis3-prepackager-imweb-ques/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265711330,"owners_count":23815513,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-29T19:27:24.238Z","updated_at":"2026-05-10T05:04:03.013Z","avatar_url":"https://github.com/imweb.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# fis3-prepackager-imweb-ques\n\nfis3 prepackager plugin for q components of imweb team\n\n# 标识Ques页面\n\n```js\nfis.match('pages/**main.html', {\n    isQPage: true\n})\n```\nor\n\n```html\n\u003c!DOCTYPE html\u003e\n\u003c!--isQPage--\u003e\n\u003chtml lang=\"en\"\u003e\n\u003chead\u003e\u003c/head\u003e\n\u003cbody\u003e\u003c/body\u003e\n\u003c/html\u003e\n```\n\n# 处理过程\n\n- components/*.{css,js,scss}\n\n只替换`holder`成模块名\n\n- 入口文件 pages/main.html\n    - 添加components css/js依赖\n    - 展开components \n    - 添加components 信息(之前ques不需要，但它需要在components js文件里注册组件，为了简化对components js的处理, 将注册组件统一移至Q.factory中，因此添加组件信息)\n\n输入:\n\n```html\n\u003c!DOCTYPE html\u003e\n\u003chtml lang=\"en\"\u003e\n\u003chead\u003e\n    \u003cmeta charset=\"UTF-8\"\u003e\n    \u003ctitle\u003e\u003c/title\u003e\n    \u003clink rel=\"stylesheet\" href=\"/pages/start/main.css\"\u003e\n\u003c/head\u003e\n\u003cbody\u003e\n    \u003cchead\u003e\u003c/chead\u003e\n    \u003cscript src=\"/libs/mod.js\"\u003e\u003c/script\u003e\n    \u003cscript src=\"/libs/jquery.min.js\"\u003e\u003c/script\u003e\n    \u003cscript\u003e\n        require('libs/Q.factory')();\n    \u003c/script\u003e\n\u003c/body\u003e\n\u003c/html\u003e\n```\n\n输出:\n\n```html\n\u003c!DOCTYPE html\u003e\n\u003chtml lang=\"en\"\u003e\n\u003chead\u003e\n    \u003cmeta charset=\"UTF-8\"\u003e\n    \u003ctitle\u003e\u003c/title\u003e\n    \u003clink rel=\"stylesheet\" href=\"/pages/start/main.css\"\u003e\n\u003c/head\u003e\n\u003cbody\u003e\n    \u003c!-- 展开components --\u003e\n    \u003cdiv q-text=\"text\" class=\"component-1\"\u003e\u003c/div\u003e\n    \u003cscript src=\"/libs/mod.js\"\u003e\u003c/script\u003e\n    \u003cscript src=\"/libs/jquery.min.js\"\u003e\u003c/script\u003e\n    \u003c!-- components 信息 --\u003e\n    \u003cscript\u003evar _components = {\"chead\":{\"js\":\"components/chead/main\",\"child\":1,\"uid\":1}};\u003c/script\u003e\n    \u003cscript\u003e\n        require('libs/Q.factory')();\n    \u003c/script\u003e\n\u003c/body\u003e\n\u003c/html\u003e\n```\n\n```js\n// 添加components css依赖\nfile.addRequire('/components/chead/main.css');\n// 添加components js依赖\nfile.addRequire('/components/chead/main.js');\n```\n\n# 依赖 \n\n- commonJs (包裹js成AMD)\n\n# 配置\n\n- `holder`: `/___|\\$__/g` 占位符\n- `hash`: `false` 是否对占位符做hash处理\n- `components`: `['/components', getComp]` 组件路径\n\n```js\nfunction getComp(name, ret) {\n    return {\n        name: name,\n        html: html.getContent(),\n        htmlFile: html,\n        js: js \u0026\u0026 js.getContent() || null,\n        jsFile: js || null,\n        css: css \u0026\u0026 css.getContent() || null,\n        cssFile: css || null\n    }\n}\n```\n\n# 问题\n\n- components是否支持与scss集成\n    - 支持, component的样式文件按main.css, main.scss, main.less的顺序查找\n    - 使用main.scss main.less时占位符`holder`请勿使用`$__`, `$`对scss会报错, 可以使用3个下划线`___`\n- 如何使用查找到lego下的component\n    - 配置components中传入查找函数，想怎么找就怎么找\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fimweb%2Ffis3-prepackager-imweb-ques","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fimweb%2Ffis3-prepackager-imweb-ques","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fimweb%2Ffis3-prepackager-imweb-ques/lists"}