Security News
Research
Data Theft Repackaged: A Case Study in Malicious Wrapper Packages on npm
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
@intlify/vue-router-bridge
Advanced tools
Vue Router bridging for Vue 2 & Vue 3
This library is inspired by vue-demi
useRouter
useRoute
# npm
npm install @intlify/vue-router-bridge
# yarn
yarn add @intlify/vue-router-bridge
# pnpm
pnpm add @intlify/vue-router-bridge
You need to add vue-router
and @vue/composition-api
to your plugin's peer dependencies to specify what versions you support.
{
"dependencies": {
"@intlify/vue-router-bridge": "latest"
},
"peerDependencies": {
"@vue/composition-api": "^1.0.0-rc.1",
"vue-router": "^3.0.0" // or "^4.0.0" base on your preferred working environment
},
"peerDependenciesMeta": {
"@vue/composition-api": {
"optional": true
}
},
"devDependencies": {
"vue-router": "^3.0.0" // or "^4.0.0" base on your preferred working environment
},
}
Import everything related to Vue Router from it, it will redirect to vue-router@3
+ @vue/composition-api
or vue-router@4
based on users' environments.
import { useRouter, useRoute } from '@intlify/vue-router-bridge'
When using with Vite, you will need to opt-out the pre-bundling to get @intlify/vue-router-bridge
work properly by
// vite.config.js
export default defineConfig({
optimizeDeps: {
exclude: ['@intlify/vue-router-bridge']
}
})
@intlify/vue-router-bridge
provides extra APIs to help distinguish users' environments and to do some version-specific logic.
isVueRouter3
/ isVueRouter4
import { isVueRouter3, isVueRouter4 } from '@intlify/vue-router-bridge'
if (isVueRouter3) {
// Vue Router 3 only
} else {
// Vue Router 4 only
}
To explicitly switch the redirecting version, you can use these commands in your project's root:
npx vue-router-switch 3
# or
npx vue-router-switch 4
If you would like to import vue-router
under an alias, you can use the following command:
npx vue-router-switch 3 vue-router3
# or
npx vue-router-switch 4 vue-router4
If the postinstall hook doesn't get triggered or you have updated the Vue Router version, try to run the following command to resolve the redirecting:
npx vue-router-fix
You can support testing for both versions by adding npm alias in your dev dependencies. For example:
{
"scripts": {
"test:3": "vue-router-switch 3 vue-router3 && jest",
"test:4": "vue-router-switch 4 && jest",
},
"devDependencies": {
"vue-router": "^4.0.0",
"vue-router3": "npm:vue-router@3"
},
}
or
{
"scripts": {
"test:3": "vue-router-switch 3 && jest",
"test:4": "vue-router-switch 4 vue-router4 && jest",
},
"devDependencies": {
"vue-router": "^3.0.0",
"vue-router4": "npm:vue-router@4"
},
}
This package idea was inspired from vue-demi, @antfu's great work!
FAQs
Vue Router bridging for Vue 2 & Vue 3
We found that @intlify/vue-router-bridge demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Research
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
Research
Security News
Attackers used a malicious npm package typosquatting a popular ESLint plugin to steal sensitive data, execute commands, and exploit developer systems.
Security News
The Ultralytics' PyPI Package was compromised four times in one weekend through GitHub Actions cache poisoning and failure to rotate previously compromised API tokens.