все правильно 👍
такой будет работать, но точно ли тебе нужен этот адрес провайдом в приложение и вообще в приложении?
не работает. нужен в одном файле
если нужен в одном файле, то проще там и описать (а ещё лучше в ENV)
а значение переменной откуда берётся?
из конфига. свой конфиг у роута
лучше код приведи. Иначе эта беседа растянется надолго
делаю билд для для разных роутов в одном проекте. вот для каждого роута свой конфиг со страничкой которая APP и и файлом бэка
да. все заработало ) build: { outDir, emptyOutDir: true, rollupOptions: { input: { installers: resolve(root, 'pages', 'installers', 'index.html'), }, }, },
Это всё ещё не объясняет, что из себя представляет конфиг и каким образом появляется JS переменная...
я же ничего не сделал)
config import mainPage from '../ui/path1Page.vue' export const BASE_API_URL = 'path1.php' export { mainPage } main.js import { createApp } from 'vue' import { setBaseUrl } from '../../app/api/core' import '@/shared/style/index.css' import { BASE_API_URL, mainPage } from './config/config' setBaseUrl(BASE_API_URL) const app = createApp(mainPage) app.mount('#app') core.js import axios from 'axios' import { ref } from 'vue' const BASE_API_URL = ref('') export const setBaseUrl = (url) => (BASE_API_URL.value = url) const api = axios.create({ headers: { 'Access-Control-Allow-Origin': '*' }, }) ... export const apiCore = { post(params = {}) { return api.post(BASE_API_URL.value, JSON.stringify(params)) }, } для разных путей меняю конфиг файл. апи уровнем выше и он одинаков для всех. маин.жс тоже одинаков
для каждой страницы свой конфиг
main.js не может быть одинаковым, иначе нет смысла иметь разные точки входа (раз в них всё равно одно и тоже). Решение через setBaseUrl в точке входа - норм, только ref и реактивность в core.js не нужна, это просто переменная
Обсуждают сегодня