KO新手。
我有点工作,只是它不太工作!
如果用户已登录,我想显示图像标签(可见)(我在 MVC 4 和 Razor 中使用 KO):
<img id="imgFavRestaurant" data-bind="attr: { style: { visibility: UserId > 0 ? 'visible' : 'hidden' }, src:FavoriteOutletImageUrl }" />
当用户登录时,它会向我显示正确的图像,但是当用户未登录时,我仍然看到图像标签(但是一个空图像,因为我正在为 url 返回一个空字符串):
var userId = 0;
@if (Site.Web.Helpers.UserContext.IsAuthenticated)
{
@:userId = @Site.Web.Helpers.UserContext.User.Id;
}
self.UserId = userId;
self.FavoriteOutletImageUrl = ko.computed(function ()
{
if (userId <= 0)
{
return '';
}
return (data.IsUserFavoriteOutlet) ? '@Url.Content("~/Images/FavOutlet.png")' : '@Url.Content("~/Images/NonFavOutlet.png")';
});
我哪里错了?为什么它总是显示图像标签?另外,如何在 KO 和 HTML5 中绑定多个属性?
谢谢你