Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/445.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在发布新代码时从客户端清除本地存储_Javascript_Angular_Local Storage - Fatal编程技术网

Javascript 如何在发布新代码时从客户端清除本地存储

Javascript 如何在发布新代码时从客户端清除本地存储,javascript,angular,local-storage,Javascript,Angular,Local Storage,我已经在Angular 4上构建了我的应用程序,我正在使用本地存储来存储用户会话。我想要的是,无论何时发布应用程序,都应该重置用户本地存储,以便发布前的数据不会产生任何问题 如何做到这一点?使用版本控制,在客户端保留一个额外的密钥,该密钥将具有最后一个版本。如果版本匹配,则表示未发布新代码;如果版本不匹配,则表示已传递新代码,则只需使用一个实用程序来清除本地存储 使用版本控制,在客户端保留一个额外的密钥,该密钥将具有最后一个版本。如果版本匹配,则表示未发布新代码;如果版本不匹配,则表示已传递新代

我已经在Angular 4上构建了我的应用程序,我正在使用本地存储来存储用户会话。我想要的是,无论何时发布应用程序,都应该重置用户本地存储,以便发布前的数据不会产生任何问题


如何做到这一点?

使用版本控制,在客户端保留一个额外的密钥,该密钥将具有最后一个版本。如果版本匹配,则表示未发布新代码;如果版本不匹配,则表示已传递新代码,则只需使用一个实用程序来清除本地存储

使用版本控制,在客户端保留一个额外的密钥,该密钥将具有最后一个版本。如果版本匹配,则表示未发布新代码;如果版本不匹配,则表示已传递新代码,则只需使用一个实用程序来清除本地存储

您可以在应用程序和本地存储器中存储版本字符串。
在应用程序启动时,检查localStorage中的字符串是否与应用程序中的字符串匹配。如果没有,请清除本地存储。

您可以在应用程序和本地存储中存储版本字符串。 在应用程序启动时,检查localStorage中的字符串是否与应用程序中的字符串匹配。如果没有,请清除本地存储。

config/app.php

return [
        'version'         => env('APP_VERSION', "1.0.0"),
在***.blade.php中

<script>
    var version_app = "{{ config('app.version') }}"
</script>
更改版本时,脚本会自动删除本地存储数据

config/app.php

return [
        'version'         => env('APP_VERSION', "1.0.0"),
在***.blade.php中

<script>
    var version_app = "{{ config('app.version') }}"
</script>
更改版本时,脚本会自动删除本地存储数据,时间为2021年5月20日

使用应用程序版本控制

最佳实践是自动化版本控制,这样您就不必一次又一次地手动设置应用程序版本

我们的想法是

  • 获取当前git SHA,如果找不到旧的SHA,请将其存储在localstorage中
  • 如果找到旧的SHA,比较SHA,如果不相等,清除存储,在localstorage中设置新的SHA
  • 这将为您提供当前提交SHA的当前短版本

    git rev parse——短头

    在您的package.json中

    scripts:{
         start : `REACT_APP_CURRENT_GIT_SHA=`git rev-parse --short HEAD` react-scripts app.js
    }
    
    在代码中,我们通过

    process.env.REACT_APP_CURRENT_GIT_SHA
    
    代码:

    2021年5月20日

    使用应用程序版本控制

    最佳实践是自动化版本控制,这样您就不必一次又一次地手动设置应用程序版本

    我们的想法是

  • 获取当前git SHA,如果找不到旧的SHA,请将其存储在localstorage中
  • 如果找到旧的SHA,比较SHA,如果不相等,清除存储,在localstorage中设置新的SHA
  • 这将为您提供当前提交SHA的当前短版本

    git rev parse——短头

    在您的package.json中

    scripts:{
         start : `REACT_APP_CURRENT_GIT_SHA=`git rev-parse --short HEAD` react-scripts app.js
    }
    
    在代码中,我们通过

    process.env.REACT_APP_CURRENT_GIT_SHA
    
    代码:


    我认为jQuery-@VTodorov中的可能重复,您不明白他想要什么。@NnN jQuery与
    localStorage
    无关,链接中的答案都没有与jQuery O相关的内容。如果新版本少于当前的clear local storage,您必须使用版本更新来编写脚本,但他会让用户第一次注销,你不能在发布代码时这样做,它是客户端的,所以当用户在jQuery-@VTodorov中打开可能重复的站点时,它会被更新,您不明白他想要什么。@NnN jQuery与
    localStorage
    无关,链接中的答案都没有与jQuery O相关的内容。如果新版本少于当前的clear local storage,您必须使用版本更新来编写脚本,但他会让用户第一次注销,你不能在发布代码时这样做,它是客户端的,所以当用户打开站点时它会被更新。这样,我必须确保每次版本更新为+1,或者可以使用json包中的angular project版本来完成。有一个全局常量,你可以在每次发布时更新它,考虑到您正在使用一些构建脚本,我将每次用新版本更新package.json文件,然后用旧会话检查它。@PraveenRawat。尝试将此包含在构建工具本身中,使其自动化。这样,我必须确保每次版本都应更新为+1,或者可以使用json包中的angular project版本来完成。拥有一个全局常量,您可以在每次发布时更新该常量,考虑到您正在使用一些构建脚本,我将每次用新版本更新package.json文件,然后用旧会话检查它。@PraveenRawat。试着把这个包含在构建工具中,这样它就可以自动化了。谢谢你的回复,但我正在考虑自动化这个东西。这样我就不必经历释放的痛苦了。谢谢你的回复,但我正在考虑让这件事自动化。这样我就不必经历释放的痛苦。