ホームページ  >  記事  >  ウェブフロントエンド  >  環境パラメータの受け渡し方法に応じて異なるドメイン名を選択します

環境パラメータの受け渡し方法に応じて異なるドメイン名を選択します

php中世界最好的语言
php中世界最好的语言オリジナル
2018-04-20 17:36:452098ブラウズ

今回は、環境パラメータの引き渡し方法に基づいて異なるドメイン名を選択する場合と、環境パラメータの引き渡し方法に基づいて異なるドメイン名を選択する場合の注意事項を紹介します。実際のケースを見てみましょう。

プロジェクト開発中、バックエンド API ドメイン名を設定するときにフロントエンドで非常に問題が発生することがよくあります:

ローカル開発環境: api-dev.demo.com

テスト環境: api-test.demo。 .com

オンライン制作環境: api.demo.com,

今回は Vue.js プロジェクトにパッケージされています:

npm run build -- xxx を使用して、渡されたパラメーター xxx 環境に応じて違いを判断し、異なるドメイン名構成を指定します。 <code>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

1. プロジェクトの /config/dev.env.js の変更:

追加: HOST: '"dev"'

apiUrl = 'http://api.demo.com'
2. project.env.js の変更:

渡されたパラメータを取得します: rrreee
3. プロジェクト内の ajax パッケージの変更:

rrreee

4. 最後に次のように入力します。コマンド: npm run build -- test

🎜注 – 2 本の水平バーがあり、その後にパラメータが続くため、 process.env.HOST はパラメータ 'test' を取得します。 🎜rrreee🎜 prod がオンラインでリリースされ、パッケージ化されている場合は、npm run build -- prod🎜rrreee🎜 この記事の事例を読んだ後は、この方法を習得したと思います。さらに興味深い情報については、注目してください。 PHP 中国語 Web サイトの他の関連記事へ! 🎜🎜推奨読書: 🎜🎜🎜 HTML フィールドを含む文字列を HTML タグに変換する🎜🎜🎜🎜🎜js を使用して、Json のフロントエンドとバックエンドの送信を実装する🎜🎜

以上が環境パラメータの受け渡し方法に応じて異なるドメイン名を選択しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。