小编Sam*_*tar的帖子

如何将AngularJS Javascript控制器转换为Typescript?

我有一个非常简单的控制器:

.controller('ModalInstanceCtrl', function ($scope, $modalInstance, $userService) {

        $scope.ok = function () {
            $modalInstance.close();
        };

        $scope.cancel = function () {
            $modalInstance.dismiss('cancel');
        };
    })
Run Code Online (Sandbox Code Playgroud)

如何更改它以便它使用打字稿,所以即使我缩小了我的javascript后它也能正常工作?

angularjs typescript

3
推荐指数
1
解决办法
3160
查看次数

有一种简单的方法可以用包含从A到Z的id和名称的对象填充数组吗?

目前我的代码是这样做的:

wordLetterSelect = [
    {
        id: 'A',
        name: 'A'
    }, {
        id: 'B',
        name: 'B'
    }
];
Run Code Online (Sandbox Code Playgroud)

但是我需要为字母表中的每个字符做这件事.有没有一种简单的方法可以做到这一点,而不是像我为A和B那样只用一个接一个地重复一个字符?

更新

可能重复的问题做了类似的事情,但没有做我想要的.希望有人能帮忙解决这个问题.谢谢

javascript

3
推荐指数
1
解决办法
220
查看次数

startsWith不是一个我无法理解的函数

我有这个代码:

for (var i = 0; i < value.length; i++) {
   if (typeof value[i].keyword == 'undefined' || value[i].keyword == null || value[i].keyword.startsWith(keyword)) {
      out.push(value[i]);
   }
}
Run Code Online (Sandbox Code Playgroud)

我收到一条错误消息:

TypeError:r [e] .startsWith不是函数js-cf2cc68 ... .min.js.gz:85 at fn(eval at compile(js-cf2cc68 ... .min.js.gz:8),:4:1003 )at js-cf2cc68 ... .min.js.gz:7 at p.$ digest(js-cf2cc68 ... .min.js.gz:7)at p.$ apply(js-cf2cc68 ... .min.js.gz: 7)在HTMLBodyElement.(JS-cf2cc68 ... .min.js.gz:9)

这怎么可能?我想我已经占了一切.

javascript

3
推荐指数
2
解决办法
2万
查看次数

Xamarin Forms:如何在Android中更改工具栏高度?

我有一个使用工具栏的XF应用程序,它已添加到我的ContentPage中,如下所示:

public HomePage()
{
   InitializeComponent();
   var toolbarItem = new ToolbarItem
   {
      Text="Item1",
      Priority = 0,
      Order = ToolbarItemOrder.Primary,
   };

   if(Device.RuntimePlatform == Device.Android) {
      this.ToolbarItems.Add(toolbarItem);
   }
}
Run Code Online (Sandbox Code Playgroud)

我想将工具栏的高度更改为小于原始高度。我编辑Toolbar.axml如下:

<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    style="@style/AppToolbarTheme"
    android:id="@+id/toolbar"
    android:layout_width="match_parent"
    android:layout_height="50dp"
    android:minHeight="0dp"
    app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
    app:layout_scrollFlags="scroll|enterAlways" />
Run Code Online (Sandbox Code Playgroud)

不幸的是,这没有任何作用。还有其他更改工具栏高度的方法吗?

android xamarin.android xamarin xamarin.forms

3
推荐指数
1
解决办法
2443
查看次数

C# 8 新开关可以替换包含多个的代码块吗?:?: 表达?

这是我现在正在做的一个例子:

return
    shpc == 0 ? "Currently, based on your selection below, you have not yet identified any hidden cards in your card deck." :
    shpc == 1 ? "Currently, based on your selection below, you have one hidden card in your card deck." :
                $"Currently, based on your selection below, you have {shpc} hidden cards in your card deck. These will not be visible.";
Run Code Online (Sandbox Code Playgroud)

代码字但不太了解添加到 switch 的内容 我想知道这是否也可以用 switch 表达式完成?

c# switch-statement c#-8.0

3
推荐指数
1
解决办法
107
查看次数

如何使用MVC从另一个屏幕移动到另一个屏幕?

我有一个屏幕来创建MVC中的记录.如果模型验证,那么我想返回到我的主屏幕.我见过以下内容:

                return new RedirectToRouteResult(
                    new RouteValueDictionary(
                        new { controller = "Access", action = "Home" }
                    )
                );
Run Code Online (Sandbox Code Playgroud)

这似乎相当矫枉过正,因为它指定了控制器,我不想更改控制器.有更简单的方法吗?

asp.net-mvc asp.net-mvc-routing asp.net-mvc-3

2
推荐指数
1
解决办法
114
查看次数

如何将PascalCase转换为拆分单词?

我有包含文本的变量,例如:

ShowSummary
ShowDetails
AccountDetails
Run Code Online (Sandbox Code Playgroud)

在C#中有一个简单的方法函数/方法,我可以应用于这些变量来产生:

"Show Summary"
"Show Details"
"Account Details"
Run Code Online (Sandbox Code Playgroud)

我想知道一个扩展方法,但我从来没有编写过一个,我不知道从哪里开始.

c#

2
推荐指数
1
解决办法
258
查看次数

有人可以帮我简单解释一下 &lt;Func&lt;T, bool&gt;&gt;

我正在查看包含以下内容的代码:

public virtual ICollection<T> GetPk(string pk)
{
    Expression<Func<T, bool>> predicate = c => c.PartitionKey == pk;
    return this.GetAll(predicate);
}
Run Code Online (Sandbox Code Playgroud)

有人可以解释一下 的语法<Func<T, bool>>吗?

c#

2
推荐指数
1
解决办法
6654
查看次数

我可以将派生类中的这些方法替换为基类中的方法吗?

我有这样的方法:

   public void AddOrUpdate(Product product)
    {
        try
        {
            _productRepository.AddOrUpdate(product);
        }
        catch (Exception ex)
        {
            _ex.Errors.Add("", "Error when adding product");
            throw _ex;
        }
    }


    public void AddOrUpdate(Content content)
    {
        try
        {
            _contentRepository.AddOrUpdate(content);
        }
        catch (Exception ex)
        {
            _ex.Errors.Add("", "Error when adding content");
            throw _ex;
        }
    }
Run Code Online (Sandbox Code Playgroud)

加上更多只在传递给它们的类中有所不同的方法.

有没有什么方法可以在基类中编写这些方法而不是在每个派生类中重复该方法?我正在考虑基于泛型的东西,但我不确定如何实现,也不确定如何传入_productRepository.

仅供参考,这是_productRepository和_contentRepository的定义方式:

    private void Initialize(string dataSourceID)
    {
        _productRepository = StorageHelper.GetTable<Product>(dataSourceID);
        _contentRepository = StorageHelper.GetTable<Content>(dataSourceID);
        _ex = new ServiceException();
    }
Run Code Online (Sandbox Code Playgroud)

c#

2
推荐指数
1
解决办法
107
查看次数

在C#中没有异常跳出"try"块是否有"干净"的方法

我有以下代码.

        try
        {
            if (vm.SubmitAction == "Cancel")
                return RedirectToAction("ShowSummary", new
                {
                    ds = vm.Meta.DataSourceID
                 });  <------------------------------------------- xxxx
            _account.ValidateNoDuplicate(vm.Account);
            vm.Account.Modified = DateTime.Now;
            vm.Account.ModifiedBy = User.Identity.Name;
            _account.AddOrUpdate(vm.Account);
        }
        catch (Exception e) { 
            log(e); return View("CreateEdit", vm); 
        }
        return RedirectToAction("ShowSummary", new {
            ds = vm.Meta.DataSourceID
        });
Run Code Online (Sandbox Code Playgroud)

如果用户点击取消按钮,那么我有代码(在此处用< - xxxx标记)重定向到一个动作.此代码与try块之后的代码相同.有没有办法让我的代码退出try.我能想到的唯一方法是触发一个异常,我想要一个干净的跳转,而不是一个使用异常的方法,因为用户单击取消不是错误.

c#

2
推荐指数
1
解决办法
1102
查看次数