• taro2.0.0版本的config的配置


    dev.js
    const HOST = '"http://dev"'
    // const HOST_M = '"http://dev"'
    const GLOBAL_ENV = 1 
    module.exports = {
        env: {
            NODE_ENV: '"development"'
        },
        defineConstants: {
            HOST,
            GLOBAL_ENV
        },
        weapp: {},
        h5: {
            devServer:{
                host: "0.0.0.0",
                port: 10086
            },
            router: {
            mode: 'hash' // 或者是 'browser'
            }
        },
    }
    <hr>
    prod.js
    const isH5 = process.env.CLIENT_ENV === 'h5'
    const HOST = '"http://"'
    console.log('-----prod--process.env.CLIENT_ENV----', process.env.CLIENT_ENV)
    // const HOST = '"https://"'
    const GLOBAL_ENV = 3// 3是上线
    // const HOST = [1, 2].includes(GLOBAL_ENV) ? '"http://dev"' : '"https://"'
    // eslint-disable-next-line
    module.exports = {
        env: {
            NODE_ENV: '"production"'
        },
        defineConstants: {
            HOST,
            GLOBAL_ENV
        },
        weapp: {},
        h5: {
        publicPath: './'
        /**
        * 如果h5端编译后体积过大,可以使用webpack-bundle-analyzer插件对打包体积进行分析。
        * 参考代码如下:
        * webpackChain (chain) {
        * chain.plugin('analyzer')
        * .use(require('webpack-bundle-analyzer').BundleAnalyzerPlugin, [])
        * }
        */
        }
    }
    
    <hr>
    index.js
    const path = require("path")
    // import path from 'path';
    const config = {
        projectName: 'taro-framework',
        date: '2019-12-2',
        designWidth: 750,
        deviceRatio: {
            640: 2.34 / 2,
            750: 1,
            828: 1.81 / 2
        },
        sourceRoot: 'src',
        outputRoot: 'dist',
        // TODO 特别要修改babel的配置
        babel: {
            sourceMap: true,
            presets: [
            [
            'env',
            {
            modules: false
            }
            ]
            ],
            plugins: [
            'transform-class-properties',
            'transform-decorators-legacy',
            'transform-object-rest-spread'
            ]
        
        },
        // TODO 将JSON.stringify()去掉
        defineConstants: {
            'process.env.SERVER_ENV': JSON.stringify(process.env.SERVER_ENV),
        },
        // TODO 小程序名称改为mini,可以删掉很多小配置
        mini: {
            postcss: {
                pxtransform: {
                enable: true,
                config: {
                }
            },
            url: {
                enable: true,
                config: {
                limit: 10240 // 设定转换尺寸上限
                }
            },
            cssModules: {
                enable: false, // 默认为 false,如需使用 css modules 功能,则设为 true
                config: {
                    namingPattern: 'module', // 转换模式,取值为 global/module
                    generateScopedName: '[name]__[local]___[hash:base64:5]'
                }
                }
            }
        },
        // 可以删掉很多小配置
        h5: {
            esnextModules: ['taro-ui'],
            publicPath: '/',
            staticDirectory: 'static',
            devServer: {
            host: '0.0.0.0',
            port: 10086,
            proxy: {
                '/mj-c2b': {
                    target: 'https://dev.fe.musee.com.cn/', // 服务端地址
                    changeOrigin: true,
                    pathRewrite: {
                    ['^']: ''
                    }
                },
                'hb': {
                    target: 'http://dev.api.musee.com.cn', // 服务端地址
                    changeOrigin: true,
                    pathRewrite: {
                    ['^']: ''
                    }
                }
            },
        },
            postcss: {
                autoprefixer: {
                    enable: true,
                    config: {
                        browsers: [
                        'last 3 versions',
                        'Android >= 4.1',
                        'ios >= 8'
                        ]
                    }
                },
                cssModules: {
                    enable: false, // 默认为 false,如需使用 css modules 功能,则设为 true
                    config: {
                        namingPattern: 'module', // 转换模式,取值为 global/module
                        generateScopedName: '[name]__[local]___[hash:base64:5]'
                    }
                }
            }
        },
        alias: {
        '@/components': path.resolve(__dirname, '..', 'src/components'),
        '@/utils': path.resolve(__dirname, '..', 'src/utils'),
        '@/package': path.resolve(__dirname, '..', 'package.json'),
        '@/project': path.resolve(__dirname, '..', 'project.config.json'),
        }
        }
        //
        module.exports = function (merge) {
        if (process.env.NODE_ENV === 'development') {
        return merge({}, config, require('./dev'))
        }
        return merge({}, config, require('./prod'))
        }

     

    trao配置文档参考:
    http://taro-docs.jd.com/taro/docs/config-detail.html
  • 相关阅读:
    20120621第一天_复习与测试\05方法
    20120621第一天_复习与测试
    转义字符符号及对应的含义
    如何判断一个窗体是否打开
    out 和ref 的小结
    20120621第一天_复习与测试\03循环控制
    详解C#break ,continue, return
    往xptable控件中添加数据
    校内网的设计。
    iPhone不再孤独,Palm Pre为伴——互联网的未来在手中。
  • 原文地址:https://www.cnblogs.com/pikachuworld/p/12259573.html
Copyright © 2020-2023  润新知