Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Vue-i18n Parameter Replacement Issue: $t Function Not Replacing Parameters in Message String #1627

Closed
4 tasks done
manjindersinghsarkaria opened this issue Nov 2, 2023 · 2 comments
Labels
Status: Need More Info Lacks enough info to make progress

Comments

@manjindersinghsarkaria
Copy link

Reporting a bug?

const messages = {
en: {
message: {
hello: "Hello {0} world"
}
}
};

$t("message.hello", {'0': "my" })

The expected output needs to be "Hello my world"
But I am getting a string "Hello world"
The same example works fine if I do it like this

const messages = {
en: {
message: {
hello: "Hello {item} world"
}
}
};

$t("message.hello", {'item': "my" })

The version I am on is 9.6.4
Am I doing anything wrong? I tried the same with the version 8.22.3 and it is working fine.

Expected behavior

The code below
const messages = {
en: {
message: {
hello: "Hello {0} world"
}
}
};

$t("message.hello", {'0': "my" })

should return Hello my world not Hello world

Reproduction

Create a message string with parameter name {0} and then try to replace the parameter with the value something like
{'0': "my" }

System Info

{
  "name": "i18n-test",
  "version": "0.0.0",
  "private": true,
  "scripts": {
    "dev": "vite",
    "build": "vite build",
    "preview": "vite preview"
  },
  "dependencies": {
    "vue": "^3.3.4",
    "vue-i18n": "^9.6.4"
  },
  "devDependencies": {
    "@vitejs/plugin-vue": "^4.4.0",
    "vite": "^4.4.11"
  }
}

Screenshot

Screenshot_20
Screenshot_22
Screenshot_23
Screenshot_24

Additional context

No response

Validations

@manjindersinghsarkaria manjindersinghsarkaria added the Status: Review Needed Request for review comments label Nov 2, 2023
@kazupon kazupon added Status: Need More Info Lacks enough info to make progress and removed Status: Review Needed Request for review comments labels Apr 28, 2024
Copy link

Thank you for your feadback!
Would you be able to provide a reproduction 🙏

More info

Why do I need to provide a reproduction?

Reproductions make it possible for us to triage and fix issues quickly with a relatively small team. It helps us discover the source of the problem, and also can reveal assumptions you or we might be making.

What will happen?

If you've provided a reproduction, we'll remove the label and try to reproduce the issue. If we can, we'll mark it as a bug and prioritise it based on its severity and how many people we think it might affect.

If Status: Need More Info labeled issues don't receive any substantial activity (e.g., new comments featuring a reproduction link), we'll close them. That's not because we don't care! At any point, feel free to comment with a reproduction and we'll reopen it.

How can I create a reproduction?

We have a couple of templates for starting with a minimal reproduction:

👉 Reproduction mininal starter
👉 Reproduction starter with unpluguin-vue-i18n

A public GitHub repository is also perfect. 👌

Please ensure that the reproduction is as minimal as possible.

You might also find these other articles interesting and/or helpful:

@kazupon
Copy link
Member

kazupon commented May 13, 2024

Closing due to inactivity.
Please open a new issue with a reference to this one if you can follow up with more information and reproduction.
Thanks!

@kazupon kazupon closed this as completed May 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Status: Need More Info Lacks enough info to make progress
Projects
None yet
Development

No branches or pull requests

2 participants