Если вы строго определяете функцию самостоятельно, и это относительно короткое определение, решение без зависимостей должно определять функцию в строке и присваивать eval () выражения вашей функции.
Например.
funcstring = 'lambda x: x> 5'
func = eval(funcstring)
, а затем необязательно присоединить исходный код к функции:
func.source = funcstring
Вы можете использовать Программная навигация . Чтобы вернуться назад, вы можете использовать это:
router.go(n)
Где n может быть положительным или отрицательным назад). Это то же самое, что history.back (). Таким образом, вы можете использовать свой элемент следующим образом:
<a @click="$router.go(-1)">back</a>
Если вы используете Vuex
, вы можете использовать https://github.com/vuejs/vuex-router-sync
Просто инициализируйте его в вашем основном файле с помощью:
import VuexRouterSync from 'vuex-router-sync';
VuexRouterSync.sync(store, router);
Каждое изменение маршрута будет обновлять route
объект состояния в Vuex
. Затем вы можете создать getter
, чтобы использовать объект from
в состоянии маршрута или просто использовать state
(лучше использовать геттеры, но это другая история https://vuex.vuejs.org/en/ getters.html ), так что вкратце (внутри методов / значений компонентов):
this.$store.state.route.from.fullPath
Вы также можете просто поместить его в компонент <router-link>
:
<router-link :to="{ path: $store.state.route.from.fullPath }">
Back
</router-link>
Поэтому, когда вы используете код выше, ссылка на предыдущий путь будет генерироваться динамически.