GVKun编程网logo

angular4.x,navigationEnd.url vs navigationEnd.urlAfterRedirects

14

如果您对angular4.x,navigationEnd.urlvsnavigationEnd.urlAfterRedirects感兴趣,那么本文将是一篇不错的选择,我们将为您详在本文中,您将会了解到

如果您对angular4.x,navigationEnd.url vs navigationEnd.urlAfterRedirects感兴趣,那么本文将是一篇不错的选择,我们将为您详在本文中,您将会了解到关于angular4.x,navigationEnd.url vs navigationEnd.urlAfterRedirects的详细内容,并且为您提供关于@react-navigation/native 和 @react-navigation/stack 应该是我模块的 peerDependencies 或依赖项吗?、android – ActionBar.OnNavigationListener已弃用、android – NavigationView OnNavigationItemSelectedListener未被调用、android – NavigationView setNavigationItemSelectedListener此API标记为支持库的内部,不应从应用程序访问的有价值信息。

本文目录一览:

angular4.x,navigationEnd.url vs navigationEnd.urlAfterRedirects

有关navigationEnd.url和navigationEnd.urlAfterRedirects之间区别的任何解释或文档?

如果我想编写面包屑组件,我应该使用哪一个?

解决方法

这取决于您是否关心用户请求的URL或实际加载的路由的URL.

如果您定义具有重定向的任何路由,则如果用户导航到重定向到另一个路由的路由,则这两个值将不同.

例如,采取这些路线(路线加载的组件不相关,因此这里排除它们):

{
  path: "",pathMatch: "full",redirectTo: "home"
},{
  path: "home",},

如果用户导航到/ home,则navigationEnd.url和navigationEnd.urlAfterRedirects都将为/ home.

如果用户导航到/,那么navigationEnd.url将是/和navigationEnd.urlAfterRedirects将是/ home.

即使您没有实现重定向,也要尝试使用与您基于URL的功能最相关的值,因为如果添加重定向,您不希望以后遇到奇怪的错误.

@react-navigation/native 和 @react-navigation/stack 应该是我模块的 peerDependencies 或依赖项吗?

@react-navigation/native 和 @react-navigation/stack 应该是我模块的 peerDependencies 或依赖项吗?

如何解决@react-navigation/native 和 @react-navigation/stack 应该是我模块的 peerDependencies 或依赖项吗??

我正在编写一个使用以下依赖项的模块:

{
    "@react-native-community/masked-view": "^0.1.10","@react-navigation/native": "^5.9.4","@react-navigation/stack": "^5.14.4","@react-native-community/masked-view": "^0.1.10","env-cmd": "^10.1.0","firebase": "^8.4.1","react-native-gesture-handler": "^1.10.3","react-native-reanimated": "^2.1.0","react-native-safe-area-context": "^3.2.0","react-native-screens": "^3.1.1"
}

我知道存储单例状态的依赖项不应该在 dependencies 中,而应该在 devDependenciespeerDependencies 中。

我不认为 react-navigation 是一个单独的依赖项,我们可以创建导航的 ref。

可以在我的分布式模块 dependencies 中将这些依赖项用作 package.json 吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

android – ActionBar.OnNavigationListener已弃用

android – ActionBar.OnNavigationListener已弃用

我知道之前已经提到过导航的问题,但 Developer Docs说

As another mode of navigation (or filtering)

那么,什么是动作栏中的微调器的替换,它只是重新查询数据库并根据所选选项更新视图?

解决方法

这个问题已经很老了,但无论如何我都给出了答案.

当您迁移到v7支持库时需要更改监听器.

public class YourActivity extends AppCompatActivity implements AdapterView.OnItemSelectedListener

关于微调器的创建

Spinner spinner = (Spinner) findViewById(R.id.spinner);
spinner.setonItemSelectedListener(this); //set the listener

实现监听器方法

@Override
    public void onItemSelected(AdapterView<?> parent,View view,int position,long id) {
        Snackbar.make(this.getCurrentFocus(),"OnItemSelected",Snackbar.LENGTH_LONG);
        //Your implementation here
    }

    @Override
    public void onnothingSelected(AdapterView<?> parent) {
        Snackbar.make(this.getCurrentFocus(),"onnothingSelected",Snackbar.LENGTH_LONG);
        //Your implementation here
    }

onnothingSelected方法使用不清楚.你可以阅读this帖子来澄清.

我希望它有所帮助.

问候

android – NavigationView OnNavigationItemSelectedListener未被调用

我试图在我的应用程序中使用来自 Android支持设计库的NavigationView.由于某些原因OnNavigationItemSelected监听器未被调用.这是我的代码 @H_301_2@活动布局

<android.support.design.widget.NavigationView
    android:id="@+id/navigation_view"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:layout_gravity="start"
    app:headerLayout="@layout/drawer_header"
    app:menu="@menu/drawer_menu" />

        <FrameLayout
            android:id="@+id/content_frame"
            android:layout_width="match_parent"
            android:layout_height="match_parent" />
@H_301_2@活动onCreate()

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(getLayoutID());

    toolbar = (Toolbar) findViewById(R.id.activity_toolbar);
    setSupportActionBar(toolbar);
    toolbar.inflateMenu(R.menu.common_menu);
    final ActionBar actionBar = getSupportActionBar();
    if (actionBar != null) {
        actionBar.setHomeAsUpIndicator(R.drawable.ic_menu_white_24dp);
        actionBar.setdisplayHomeAsUpEnabled(true);
    }

    drawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
    navigationView = (NavigationView) findViewById(R.id.navigation_view);
    navigationView.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() {
        @Override
        public boolean onNavigationItemSelected(final MenuItem menuItem) {
            Snackbar.make(contentLayout,menuItem.getTitle() + " pressed",Snackbar.LENGTH_LONG).show();
            menuItem.setChecked(true);
            // allow some time after closing the drawer before performing real navigation
            // so the user can see what is happening
            drawerLayout.closeDrawer(GravityCompat.START);
            mDrawerActionHandler.postDelayed(new Runnable() {
                @Override
                public void run() {
                    navigate(menuItem.getItemId());
                }
            },DRAWER_CLOSE_DELAY_MS);
            drawerLayout.closeDrawers();
            return true;
        }

    });
    usernameTextView = (TextView) findViewById(R.id.drawer_header_username);                  
    usernameTextView.setText(getAppDContext().getAccount().getUsername());
   }

解决方法

当你做一个xml时,你应该在BaseLayout(FrameLayout,LinearLayout等)之后写下NavigationView
<DrawerLayout>
    <FrameLayout />
    <NavigationView />
</DrawerLayout>

android – NavigationView setNavigationItemSelectedListener此API标记为支持库的内部,不应从应用程序访问

protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        /*Ini UI*/

        mToolbar = (Toolbar) findViewById(t);
        setupToolbar();

        mNavigationRv = (RecyclerView) findViewById(R.id.navigation_rv);
        mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer);
        mNavigationView = (NavigationView) findViewById(R.id.nv);

        mNavigationRv.setLayoutManager(new linearlayoutmanager(this, linearlayoutmanager.HORIZONTAL, false));
        mNavigationAdapter = new NavigationAdapter(new ArrayList<String>(), this, this);
        mNavigationRv.setAdapter(mNavigationAdapter);
        mActionBarDrawerToggle = new ActionBarDrawerToggle(this, mDrawerLayout, 0, 0);
        mNavigationView.setNavigationItemSelectedListener(this);
        getSupportActionBar().setdisplayHomeAsUpEnabled(true);
    }

Android工作室给了我一个错误

“This API is marked as internal for the support library and should not
be accessed from apps”

for setNavigationItemSelectedListener和setCheckedItem.

请帮忙.

解决方法:

更新到支持库25.0.1后,此处相同.

这是一个警告,它适用于NavigationView的所有公共方法,但它很烦人,因为Android Studio将其标记为错误.

@SuppressWarnings(“RestrictedApi”)暂时解决它.

编辑
看起来这是Android Studio不支持库的问题.
使用AS 2.3 Canary 3我没有看到任何警告.

今天关于angular4.x,navigationEnd.url vs navigationEnd.urlAfterRedirects的分享就到这里,希望大家有所收获,若想了解更多关于@react-navigation/native 和 @react-navigation/stack 应该是我模块的 peerDependencies 或依赖项吗?、android – ActionBar.OnNavigationListener已弃用、android – NavigationView OnNavigationItemSelectedListener未被调用、android – NavigationView setNavigationItemSelectedListener此API标记为支持库的内部,不应从应用程序访问等相关知识,可以在本站进行查询。

本文标签: