小编kaz*_*kaz的帖子

功能上的非详尽模式

我有这个代码的问题,它应该计算字符串中相同字母的最长子字符串,但是有一个错误:

*** Exception: test.hs:(15,0)-(21,17): 
Non-exhaustive patterns in function countLongest'
Run Code Online (Sandbox Code Playgroud)

我知道这是错误的类型问题,但我不知道错误在哪里,或者如何查找或调试它

countLongest :: (Eq a) => [a] -> Int
countLongest' :: (Eq a) => Int -> Int -> [a] -> Int

countLongest a = countLongest' 0 0 a
countLongest' n max (y:x:ys)
        | y == x = countLongest' (n+1) max (x:ys)
        | n > max = countLongest' 0 (n) (x:ys)
        | otherwise = countLongest' 0 (max) (x:ys)
countLongest' n max []
        | n > max = n
        | otherwise = max
Run Code Online (Sandbox Code Playgroud)

haskell pattern-matching non-exhaustive-patterns

23
推荐指数
1
解决办法
4万
查看次数

使用自定义模块路径时,IntelliJ Javascript"找不到声明"

我正在尝试使用配置为使用WebPack的Javascript ES6导入语法,client并将其node_modules作为根路径来解析导入.

IntelliJ Idea从"node_modules"目录中发现模块,但它无法解析"client"目录中的路径.

例如:

当我使用:

  • import ImmutableStore from 'alt/utils/ImmutableUtil';- IntelliJ找到正确的路径,因为alt模块在node_modules目录中

  • import CustomiserActions from 'js/actions/Customiser.actions.js';- 它不起作用,因为js模块在client目录中.

我在模块设置/项目设置/标记目录中尝试了很多选项作为源根/添加外部库但似乎没有任何工作.

IntelliJ Idea版本:14.1.5

javascript intellij-idea node.js node-modules webpack

10
推荐指数
2
解决办法
2973
查看次数