小编sam*_*dy1的帖子

'slug'的词源是什么?

slu is是一个完全武断的词吗?或者它代表什么?我在与某人的对话中使用了这个词,当他们问我为什么叫它时,我意识到我不知道.

我知道它当然意味着什么:http: //codex.wordpress.org/Glossary#Slug

那么 - 这个词背后有一个实际意义吗?

url seo

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

如何使用java"打开"和"保存"

我想在java中创建一个"打开"和"保存"对话框.我想要的一个例子如下图所示:

打开:

打开文件对话框

保存:

保存文件对话框

我该怎么做呢?

java swing jfilechooser

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

如何创建本地脱机数据库

我正在使用HTML,CSS和JavaScript制作待办事项列表应用程序,我认为存储数据的最佳方式是本地数据库.我知道如何使用localStoragesessionStorage,我也知道如何使用在线MySQL数据库.但是,此应用程序必须能够脱机运行并且应该脱机存储其数据.
有没有办法只使用HTML和JavaScript来做到这一点?


回应评论:

"你说你知道如何使用localStorage......那么似乎是什么问题?"

@Lior我所知道的localStorage是,你可以将一个结果存储为一个变量,而我希望存储一个包含不同列的行,其中包含有关该对象的不同数据.但是,可以localStorage保存一个对象,如果是这样,它是用通常的对象表示法引用的吗?

任何实现都可能取决于您的用户更喜欢使用哪种浏览器.

@paul我认为chrome最受欢迎.


好的,我想澄清一下,我所问的确实是如何使用JavaScript和HTML实现这一点而不是我有没有办法只用HTML和JavaScript来做到这一点?.基本上,我想要一种SQL数据库,它可以将其内容保存在用户的机器而不是在线.

什么解决了我的问题是使用WebDB或WEBSQL(我认为它被称为类似的东西).

html javascript css database offline

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

是否可以通过中间步骤消除实例的歧义?

假设一个场景,您有一个应用程序配置,其结构已更改几次。为了方便用户使用,您希望允许从每个版本自动迁移到下一个版本。

\n

下面的代码显示了这样的场景,将配置表示为VersionedConfig,它通过配置结构的版本进行参数化。

\n

假设可以在任意两个连续版本(等等)之间进行迁移V1 -> V2V2 -> V3是否可以编写一个实例,MigrateableFromTo以正确的顺序组合这些实例以形成完整的更改集?

\n
{-# LANGUAGE AllowAmbiguousTypes #-}\n{-# LANGUAGE DataKinds #-}\n{-# LANGUAGE GADTs #-}\n{-# LANGUAGE ScopedTypeVariables #-}\n{-# LANGUAGE TypeApplications #-}\n{-# LANGUAGE UndecidableInstances #-}\n\n-- | Represents different versions of a config file\ndata ConfigVersion = V1 | V2 | V3\n\n-- | Represents the config itself, at different versions\ndata VersionedConfig (v :: ConfigVersion) where\n  CV1 :: Int -> VersionedConfig V1\n  CV2 :: Integer -> VersionedConfig V2\n  CV3 :: String …
Run Code Online (Sandbox Code Playgroud)

haskell proof typeclass

6
推荐指数
1
解决办法
254
查看次数

为什么参数可以接受类型类的任何构造,但不能有条件地构造其值?

我对 Haskell 还是很陌生,虽然不是编程,我一直在使用req 库来执行 HTTPS 请求。

为了保留一些通用性,将有两种类型的请求 - 一种用于创建文档(通过 HTTP POST),另一种用于更新文档(通过 HTTP PATCH,在updateMask参数中使用非空的 monoid )。

我可以从 if 推断出 HTTP 动词updateMask == mempty,但这不会编译,因为POSTPATCH是不同的data声明(尽管两者都作为 of 的第一个参数有效,req因为它们是HttpMethod.

getSaveEventRequestResponse :: Text -> Option Https -> Document -> IO IgnoreResponse
getSaveEventRequestResponse authToken updateMask document =
  runReq defaultHttpConfig $
  req
    (if updateMask == mempty
       then POST
       else PATCH)
    (https "test.example.com" /: "api" /: "projects" /: "myproject")
    (ReqBodyJson document)
    ignoreResponse $ …
Run Code Online (Sandbox Code Playgroud)

haskell types typeclass haskell-req

5
推荐指数
1
解决办法
75
查看次数

应如何使用 Jetpack Compose 引用可组合的高阶函数?

我正在使用 Jetpack Compose 版本 0.1.0-dev13

我编写了一个简单的可组合函数,它使用一个AdapterList项目列表。(注意:当使用 lambda 而不是使用::语法的引用时,这将按预期工作)

AdapterList(data = items, itemCallback = ::ItemCard)
Run Code Online (Sandbox Code Playgroud)

作为参考,签名AdapterList如下:

@Composable
fun <T> AdapterList(
    data: List<T>,
    modifier: Modifier = Modifier,
    itemCallback: @Composable (T) -> Unit
)
Run Code Online (Sandbox Code Playgroud)

为了更好地促进单独预览,我将项目回调分解为一个单独的可组合函数。

ItemCard函数如下所示:

@Composable
private fun ItemCard(item: Item) {
    Card(
        color = item.type.getColor()
    ) {
        Text(
            item.name,
            style = MaterialTheme.typography.h5
        )
    }
}
Run Code Online (Sandbox Code Playgroud)

据我了解,该ItemCard函数的签名应满足 的参数@Composable (Item) -> Unit类型。itemCallbackAdapterList

此时 IDE 中没有显示任何错误。

但是,当尝试构建项目时,会显示以下错误:

类型不匹配:推断类型为 KFunction1<Item, Unit> 但预期为 …

android higher-order-functions kotlin android-jetpack-compose

5
推荐指数
1
解决办法
4031
查看次数

为什么 LiveData.getValue 返回 null 除非调用了observe?

我有一个ViewModel具有 type 属性的属性LiveData<UserData>,正在从 Room 数据库中读取。

其代码如下:

class UserDataViewModel(application: Application) : AndroidViewModel(application) {

    private val userDataDao: UserDataDao = AppDatabase.getInstance(application).dao()
    val userData: LiveData<UserData?> = userDataDao.getUserData()

}
Run Code Online (Sandbox Code Playgroud)

在关联的活动中,我获得了对视图模型的引用:

private val viewModel: UserDataViewModel by viewModels()
Run Code Online (Sandbox Code Playgroud)

UserData在该活动中,我需要获取按钮单击的值:

private fun handleClick(view: View) {
    viewModel.userData.value?.let {
        // do stuff if the userData is present
    }
}
Run Code Online (Sandbox Code Playgroud)

从理论上讲,除非用户在加载数据之前按下按钮,否则它永远不应该为空。

然而,正如代码所示,对的调用viewModel.userData.value始终为空,并且该let块永远不会执行。

但是,如果我在 中添加此语句onCreatelet单击处理程序中的块将根据需要执行

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    viewModel.userData.observe(this, Observer {
        // do nothing …
Run Code Online (Sandbox Code Playgroud)

android android-lifecycle kotlin android-room android-livedata

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