packages/okam-build/lib/processor/helper/component.js
function addProcessEntryPages(pages, pageFileMap, allPageFiles, fileDirname, buildManager) {
    let {files: allFiles, componentExtname, logger, appType, root} = buildManager;

    pages.forEach(
        p => {
            let pageFileNotExt = path.resolve(fileDirname, p);
            let pageFile = allFiles.getByFullPath(`${pageFileNotExt}.${componentExtname}`);

            // add sfc first
            if (pageFile) {
                pageFileMap[p] = pageFile;
                pageFile.isPageComponent = true;
                buildManager.addNeedBuildFile(pageFile);
                allPageFiles.push(pageFile);
                return;
            }

            // not support quick
            if (appType === 'quick') {
                logger.error(`missing page file: 「${pageFileNotExt}.${componentExtname}」.`);
                return;
            }

            // add native file
            let resultFilesInfo = getPageOriginFileExtnames(pageFileNotExt, buildManager);

            Object.keys(resultFilesInfo.filesMap || {}).forEach(ext => {
                let originFile = resultFilesInfo.filesMap[ext];
                buildManager.addNeedBuildFile(originFile);
                allPageFiles.push(originFile);
            });

            let missingMustFileExtnames = resultFilesInfo.missingMustFileExtnames;
            if (missingMustFileExtnames.length) {
                let pageFile = getRelative(pageFileNotExt, root);
                missingMustFileExtnames.forEach(ext => {
                    logger.error(`missing page file: 「${pageFile}.${ext}」.`);
                });
            }

        }
    );
}
function addProcessEntryPages(pages, pageFileMap, allPageFiles, fileDirname, buildManager) {
    let {files: allFiles, componentExtname, logger, appType, root} = buildManager;

    pages.forEach(
        p => {
            let pageFileNotExt = path.resolve(fileDirname, p);
            let pageFile = allFiles.getByFullPath(`${pageFileNotExt}.${componentExtname}`);

            // add sfc first
            if (pageFile) {
                pageFileMap[p] = pageFile;
                pageFile.isPageComponent = true;
                buildManager.addNeedBuildFile(pageFile);
                allPageFiles.push(pageFile);
                return;
            }

            // not support quick
            if (appType === 'quick') {
                logger.error(`missing page file: 「${pageFileNotExt}.${componentExtname}」.`);
                return;
            }

            // add native file
            let resultFilesInfo = getPageOriginFileExtnames(pageFileNotExt, buildManager);

            Object.keys(resultFilesInfo.filesMap || {}).forEach(ext => {
                let originFile = resultFilesInfo.filesMap[ext];
                buildManager.addNeedBuildFile(originFile);
                allPageFiles.push(originFile);
            });

            let missingMustFileExtnames = resultFilesInfo.missingMustFileExtnames;
            if (missingMustFileExtnames.length) {
                let pageFile = getRelative(pageFileNotExt, root);
                missingMustFileExtnames.forEach(ext => {
                    logger.error(`missing page file: 「${pageFile}.${ext}」.`);
                });
            }

        }
    );
}
addProcessEntryPages

@param {Array} pages        pages
@param {Object} pageFileMap  page file map
@param {Array} allPageFiles  all page files
@param {Object} fileDirname         file object
@param {Object} buildManager buildManager