Vue string matching in handlebars {{myString !== “” ? myString : otherString}}
up vote
1
down vote
favorite
{{myString !== "" ? myString : otherString}}
is currently printing myString
which is an empty string
What is wrong with my comparator? I also tried using single quotes
The reason I ask this seemingly basic question is because the Vue documentation on handlebars doesn't seem to cover this, aside from letting me know that general javascript is available, I thought this comparator was general javascript for strings
javascript string vue.js comparator
add a comment |
up vote
1
down vote
favorite
{{myString !== "" ? myString : otherString}}
is currently printing myString
which is an empty string
What is wrong with my comparator? I also tried using single quotes
The reason I ask this seemingly basic question is because the Vue documentation on handlebars doesn't seem to cover this, aside from letting me know that general javascript is available, I thought this comparator was general javascript for strings
javascript string vue.js comparator
i tried your example by settingmyString:""
andotherString:"test"
and i set{{myString !== "" ? myString : otherString}}
in my template which prints test, i think you have an issue somewhere else
– Boussadjra Brahim
Nov 10 at 23:05
1
DoesmyString.trim() !== ""
perhaps have an effect on the output? CanmyString
be null or undefined instead of""
?
– Jonathan Lonowski
Nov 10 at 23:10
@JonathanLonowski yes it can. The model says myString should be a string but the mongodb object may not have that key, currently
– CQM
Nov 11 at 2:23
@JonathanLonowski the answer was just usingif(value)
so therefore{{ myString ? ... : ... }}
– CQM
Nov 11 at 5:12
add a comment |
up vote
1
down vote
favorite
up vote
1
down vote
favorite
{{myString !== "" ? myString : otherString}}
is currently printing myString
which is an empty string
What is wrong with my comparator? I also tried using single quotes
The reason I ask this seemingly basic question is because the Vue documentation on handlebars doesn't seem to cover this, aside from letting me know that general javascript is available, I thought this comparator was general javascript for strings
javascript string vue.js comparator
{{myString !== "" ? myString : otherString}}
is currently printing myString
which is an empty string
What is wrong with my comparator? I also tried using single quotes
The reason I ask this seemingly basic question is because the Vue documentation on handlebars doesn't seem to cover this, aside from letting me know that general javascript is available, I thought this comparator was general javascript for strings
javascript string vue.js comparator
javascript string vue.js comparator
asked Nov 10 at 22:57
CQM
14.1k60191330
14.1k60191330
i tried your example by settingmyString:""
andotherString:"test"
and i set{{myString !== "" ? myString : otherString}}
in my template which prints test, i think you have an issue somewhere else
– Boussadjra Brahim
Nov 10 at 23:05
1
DoesmyString.trim() !== ""
perhaps have an effect on the output? CanmyString
be null or undefined instead of""
?
– Jonathan Lonowski
Nov 10 at 23:10
@JonathanLonowski yes it can. The model says myString should be a string but the mongodb object may not have that key, currently
– CQM
Nov 11 at 2:23
@JonathanLonowski the answer was just usingif(value)
so therefore{{ myString ? ... : ... }}
– CQM
Nov 11 at 5:12
add a comment |
i tried your example by settingmyString:""
andotherString:"test"
and i set{{myString !== "" ? myString : otherString}}
in my template which prints test, i think you have an issue somewhere else
– Boussadjra Brahim
Nov 10 at 23:05
1
DoesmyString.trim() !== ""
perhaps have an effect on the output? CanmyString
be null or undefined instead of""
?
– Jonathan Lonowski
Nov 10 at 23:10
@JonathanLonowski yes it can. The model says myString should be a string but the mongodb object may not have that key, currently
– CQM
Nov 11 at 2:23
@JonathanLonowski the answer was just usingif(value)
so therefore{{ myString ? ... : ... }}
– CQM
Nov 11 at 5:12
i tried your example by setting
myString:""
and otherString:"test"
and i set {{myString !== "" ? myString : otherString}}
in my template which prints test, i think you have an issue somewhere else– Boussadjra Brahim
Nov 10 at 23:05
i tried your example by setting
myString:""
and otherString:"test"
and i set {{myString !== "" ? myString : otherString}}
in my template which prints test, i think you have an issue somewhere else– Boussadjra Brahim
Nov 10 at 23:05
1
1
Does
myString.trim() !== ""
perhaps have an effect on the output? Can myString
be null or undefined instead of ""
?– Jonathan Lonowski
Nov 10 at 23:10
Does
myString.trim() !== ""
perhaps have an effect on the output? Can myString
be null or undefined instead of ""
?– Jonathan Lonowski
Nov 10 at 23:10
@JonathanLonowski yes it can. The model says myString should be a string but the mongodb object may not have that key, currently
– CQM
Nov 11 at 2:23
@JonathanLonowski yes it can. The model says myString should be a string but the mongodb object may not have that key, currently
– CQM
Nov 11 at 2:23
@JonathanLonowski the answer was just using
if(value)
so therefore {{ myString ? ... : ... }}
– CQM
Nov 11 at 5:12
@JonathanLonowski the answer was just using
if(value)
so therefore {{ myString ? ... : ... }}
– CQM
Nov 11 at 5:12
add a comment |
2 Answers
2
active
oldest
votes
up vote
0
down vote
The ternary operator works fine on the template.
Check your myString
data it might not be empty.
<div>Empty: {{myString === "" ? 'test' : otherString}}<div>
<div>Non Empty: {{myString !== "" ? 'test' : otherString}}<div>
See the example below.
var app = new Vue({
el: '#app',
data() {
return {
myString: "",
otherString: "blah"
}
},
})
<script src="https://cdn.jsdelivr.net/npm/vue@2.5.17/dist/vue.js"></script>
<div id="app">
<div>Empty: {{myString === "" ? 'test' : otherString}}<div>
<div>Non Empty: {{myString !== "" ? 'test' : otherString}}<div>
</div>
add a comment |
up vote
0
down vote
accepted
if(value)
was the answer here, to cover all the conditions I needed
so {{ myString ? ... : ... }}
add a comment |
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
0
down vote
The ternary operator works fine on the template.
Check your myString
data it might not be empty.
<div>Empty: {{myString === "" ? 'test' : otherString}}<div>
<div>Non Empty: {{myString !== "" ? 'test' : otherString}}<div>
See the example below.
var app = new Vue({
el: '#app',
data() {
return {
myString: "",
otherString: "blah"
}
},
})
<script src="https://cdn.jsdelivr.net/npm/vue@2.5.17/dist/vue.js"></script>
<div id="app">
<div>Empty: {{myString === "" ? 'test' : otherString}}<div>
<div>Non Empty: {{myString !== "" ? 'test' : otherString}}<div>
</div>
add a comment |
up vote
0
down vote
The ternary operator works fine on the template.
Check your myString
data it might not be empty.
<div>Empty: {{myString === "" ? 'test' : otherString}}<div>
<div>Non Empty: {{myString !== "" ? 'test' : otherString}}<div>
See the example below.
var app = new Vue({
el: '#app',
data() {
return {
myString: "",
otherString: "blah"
}
},
})
<script src="https://cdn.jsdelivr.net/npm/vue@2.5.17/dist/vue.js"></script>
<div id="app">
<div>Empty: {{myString === "" ? 'test' : otherString}}<div>
<div>Non Empty: {{myString !== "" ? 'test' : otherString}}<div>
</div>
add a comment |
up vote
0
down vote
up vote
0
down vote
The ternary operator works fine on the template.
Check your myString
data it might not be empty.
<div>Empty: {{myString === "" ? 'test' : otherString}}<div>
<div>Non Empty: {{myString !== "" ? 'test' : otherString}}<div>
See the example below.
var app = new Vue({
el: '#app',
data() {
return {
myString: "",
otherString: "blah"
}
},
})
<script src="https://cdn.jsdelivr.net/npm/vue@2.5.17/dist/vue.js"></script>
<div id="app">
<div>Empty: {{myString === "" ? 'test' : otherString}}<div>
<div>Non Empty: {{myString !== "" ? 'test' : otherString}}<div>
</div>
The ternary operator works fine on the template.
Check your myString
data it might not be empty.
<div>Empty: {{myString === "" ? 'test' : otherString}}<div>
<div>Non Empty: {{myString !== "" ? 'test' : otherString}}<div>
See the example below.
var app = new Vue({
el: '#app',
data() {
return {
myString: "",
otherString: "blah"
}
},
})
<script src="https://cdn.jsdelivr.net/npm/vue@2.5.17/dist/vue.js"></script>
<div id="app">
<div>Empty: {{myString === "" ? 'test' : otherString}}<div>
<div>Non Empty: {{myString !== "" ? 'test' : otherString}}<div>
</div>
var app = new Vue({
el: '#app',
data() {
return {
myString: "",
otherString: "blah"
}
},
})
<script src="https://cdn.jsdelivr.net/npm/vue@2.5.17/dist/vue.js"></script>
<div id="app">
<div>Empty: {{myString === "" ? 'test' : otherString}}<div>
<div>Non Empty: {{myString !== "" ? 'test' : otherString}}<div>
</div>
var app = new Vue({
el: '#app',
data() {
return {
myString: "",
otherString: "blah"
}
},
})
<script src="https://cdn.jsdelivr.net/npm/vue@2.5.17/dist/vue.js"></script>
<div id="app">
<div>Empty: {{myString === "" ? 'test' : otherString}}<div>
<div>Non Empty: {{myString !== "" ? 'test' : otherString}}<div>
</div>
answered Nov 11 at 4:52
cal_br_mar
51126
51126
add a comment |
add a comment |
up vote
0
down vote
accepted
if(value)
was the answer here, to cover all the conditions I needed
so {{ myString ? ... : ... }}
add a comment |
up vote
0
down vote
accepted
if(value)
was the answer here, to cover all the conditions I needed
so {{ myString ? ... : ... }}
add a comment |
up vote
0
down vote
accepted
up vote
0
down vote
accepted
if(value)
was the answer here, to cover all the conditions I needed
so {{ myString ? ... : ... }}
if(value)
was the answer here, to cover all the conditions I needed
so {{ myString ? ... : ... }}
answered Nov 11 at 6:02
CQM
14.1k60191330
14.1k60191330
add a comment |
add a comment |
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53244236%2fvue-string-matching-in-handlebars-mystring-mystring-otherstring%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
i tried your example by setting
myString:""
andotherString:"test"
and i set{{myString !== "" ? myString : otherString}}
in my template which prints test, i think you have an issue somewhere else– Boussadjra Brahim
Nov 10 at 23:05
1
Does
myString.trim() !== ""
perhaps have an effect on the output? CanmyString
be null or undefined instead of""
?– Jonathan Lonowski
Nov 10 at 23:10
@JonathanLonowski yes it can. The model says myString should be a string but the mongodb object may not have that key, currently
– CQM
Nov 11 at 2:23
@JonathanLonowski the answer was just using
if(value)
so therefore{{ myString ? ... : ... }}
– CQM
Nov 11 at 5:12