この記事では主に、環境に応じて異なるドメイン名をパッケージ化するための vue プロジェクトの Npm run build メソッドを紹介します。npm run build --xxx を使用して、渡されたパラメーター xxx に従って異なる環境を決定し、異なるドメイン名構成を与えます。具体的な内容 詳細については、この記事を参照してください
プロジェクト開発中、フロントエンドはバックエンド API ドメイン名を設定するときに非常に問題が発生します:
ローカル開発環境: api-dev.demo.com
テスト環境: api-test.demo.com
オンライン本番環境: api.demo.com、
今回は Vue.js プロジェクトにパッケージ化されています。その方法を説明しましょう:
Use npm run build -- xxx 、納品に従って パラメータ xxx は、さまざまな環境を決定し、さまざまなドメイン名構成を与えるために使用されます。 npm run build -- xxx
,根据传递参数xxx来判定不同的环境,给出不同的域名配置。
1.项目中/config/dev.env.js修改:
新增:HOST: '"dev"'
'use strict' const merge = require('webpack-merge') const prodEnv = require('./prod.env') module.exports = merge(prodEnv, { NODE_ENV: '"development"', HOST: '"dev"' })
2.项目中/config/prod.env.js修改:
获取传递进来的参数:
'use strict' let HOST = process.argv.splice(2)[0] || 'prod'; console.log(HOST); module.exports = { NODE_ENV: '"production"', HOST: '"'+HOST+'"' }
3.项目中ajax封装的地方修改:
/** ** 设置API接口域名 **/ let apiUrl = ''; // 根据 process.env.HOST 的值判断当前是什么环境 // 命令:npm run build -- test ,process.env.HOST就设置为:'test' let HOST = process.env.HOST; HOST = HOST === 'prod' ? '' : '-' + HOST; apiUrl = 'http://api'+HOST+'.demo.com'; axios.defaults.baseURL = apiUrl;
4.最后敲命令:
npm run build -- test
注意–是2个横杠, 后面跟参数,这样 process.env.HOST 就获取到参数 'test' 了,
apiUrl = 'http://api-test.demo.com'
若线上prod发布打包,npm run build -- prod
apiUrl = 'http://api.demo.com'
渡されたパラメータを取得します: rrreee
3. プロジェクト内の ajax パッケージの変更:rrreee4. 最後に次のように入力します。コマンド:
npm run build -- test
注 – 2 本の水平バーがあり、その後にパラメータが続くため、 process.env.HOST はパラメータ 'test' を取得します。 rrreee
prod がオンラインでリリースおよびパッケージ化されている場合は、npm run build -- prod
🎜rrreee🎜 上記は私があなたのためにコンパイルしたものです。将来役立つことを願っています。 🎜🎜関連記事: 🎜🎜🎜Ajax画像アップロードを自分で作成する🎜🎜🎜🎜異なる名前空間でAjaxアクションを使用する方法🎜🎜🎜🎜戻り値にpreタグを自動的に追加するAjaxソリューション🎜🎜以上がNpm run build in vueパッケージの環境に応じて異なるドメイン名を渡すパラメータメソッドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。