小编Hri*_*mov的帖子

Babel编译错误:找不到模块core-js/library/fn/get-iterator

这是我的目录结构:

????demo
?   ????entry
?   ?   ????index.js
?   ?   ????tap.js
?   ?   ????util.js
?   ????node_modules
?   ????index.html
?   ????package.json
?   ????webpack.config.js
????src
?   ????tap.js
?   ????util.js
????index.js
????package.json
Run Code Online (Sandbox Code Playgroud)

demo/entry/index.js我有

import tap from '../../src/tap';
Run Code Online (Sandbox Code Playgroud)

编译时,babel会抛出错误

ERROR in ../src/tap.js
Module build failed: Error: Cannot find module 'core-js/library/fn/get-iterator'
Run Code Online (Sandbox Code Playgroud)

但是如果我像这样导入它就有效

import tap from './tap';
Run Code Online (Sandbox Code Playgroud)

该文件./tap.js../../src/tap是相同的.

是问题node_modules吗?因为在demo目录中,babel和其他任何东西都在node_modules,所以我可以import任何我喜欢的文件.但是src/tap.js没有像这样的父或兄弟目录node_modules,所以它会触发这个错误.

javascript node.js node-modules babeljs

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

Angular 2材质:sidenav专注于第一个导航项目

我正在使用Angular 2 Material,我在sidenav组件中导航时遇到问题.每当我打开sidenav时,它会自动将焦点设置到第一个md-button项目,并且在我点击屏幕上的某个位置之前不会消失.

这是一个例子:https://plnkr.co/edit/pNv9Bx4o1qQSF2bpOqyM?p=preview

我试图focus()sidenav.open()事件上设置另一个元素但是闪烁效果会出现一秒钟.

是否有任何选项或属性可以禁用此初始焦点到第一个菜单项?

angular-material angular

11
推荐指数
2
解决办法
4229
查看次数

React Navigation 2:如何检查上一个场景并禁用标签更改

我有一个标签导航.我的一个标签有一个表单,如果我的表单数据没有保存,我想禁用导航事件.

在1版,该tabBarOnPress方法提供previousScene,scenejumpToIndex,所以我可以检查我要离开这一幕,并访问其道具.

现在在ver.2中,该tabBarOnPress方法为navigation场景提供道具,但缺少前一个场景道具:/

navigationOptions: {
    tabBarOnPress: ({ navigation, defaultHandler }) => {
        // Check the previous screen
        // If I am leaving the home screen and the user has unsaved data
        // disable tab navigation
        // else change to the pressed tab
    },
},
Run Code Online (Sandbox Code Playgroud)

此外,我尝试使用导航事件侦听器,但NAVIGATE已调度该操作:

props.navigation.addListener('willBlur', () => {
    // Disable tab switching;
}),
Run Code Online (Sandbox Code Playgroud)

简单的零食:https://snack.expo.io/@hristoeftimov/handle-tab-changes-in-react-navigation-v2

任何解决方案如何在退出标签之前禁用标签切换?

javascript reactjs react-native react-navigation

9
推荐指数
1
解决办法
1010
查看次数

淘汰验证:如何验证按钮点击时的字段,而不是输入更改

我正在使用以下敲除验证插件:https://github.com/Knockout-Contrib/Knockout-Validation

当我点击"提交"按钮时,我想验证我的字段,而不是每当我更改输入的值时.我怎样才能做到这一点?

使用Javascript:

ko.validation.init({
    insertMessages:false,
    messagesOnModified:false,
    decorateElement: true,
    errorElementClass: 'wrong-field'
}, true);

var viewModel = {
    firstName: ko.observable().extend({minLength: 2, maxLength: 10}),
    lastName: ko.observable().extend({required: true}),
    age: ko.observable().extend({min: 1, max: 100}),
    submit: function() {
        if (viewModel.errors().length === 0) {
            alert('Thank you.');
        }
        else {
            alert('Please check your submission.');
            viewModel.errors.showAllMessages();
        }
    },
};

viewModel.errors = ko.validation.group(viewModel);

ko.applyBindings(viewModel);
Run Code Online (Sandbox Code Playgroud)

HTML:

<fieldset>    
    <div class="row" data-bind="validationElement: firstName">
        <label>First name:</label>
        <input type="text" data-bind="textInput: firstName"/>
    </div>

    <div class="row" data-bind="validationElement: lastName">
        <label>Last name:</label>
        <input data-bind="value: lastName"/>
    </div> …
Run Code Online (Sandbox Code Playgroud)

javascript validation knockout.js knockout-validation

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

Angular:如何从另一个组件访问ActivatedRoute快照数据

我正在使用Angular2 材质工具栏,我想将当前页面标题传递给它.

我的app.component有一个标题组件和当前页面组件:

@Component({
  selector: 'mi-root',
  template: `
     <mi-header></mi-header>
     <router-outlet></router-outlet>
  `
})

export class AppComponent {
  constructor() {}
}
Run Code Online (Sandbox Code Playgroud)

在我的app.routing中,我有一个带有自定义title属性的路由对象:

const APP_ROUTES: Routes = [
  {
    path: '',
    component: HomeComponent,
    data: {
      title: 'Home'
    }
  }, {
    path: 'settings',
    component: SettingsComponent,
    data: {
      title: 'Settings'
    }
  }
];
Run Code Online (Sandbox Code Playgroud)

现在我想data.title从我的header.component访问该属性,但不幸的是它是未定义的.我的data对象是空的:

import { Component, OnInit } from '@angular/core';
import { ActivatedRoute} from '@angular/router';

@Component({
  selector: 'mi-header',
  template: `
    <md-toolbar …
Run Code Online (Sandbox Code Playgroud)

angular-material angular

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

MasterDetailPage:接受除页面之外的其他内容

我在Master-Detail页面上按照教程进行操作

我有一个问题:

部分解决方案需要一个项目类,如下所示:

public class MasterPageItem
{
    public string Title { get; set; }
    public string IconSource { get; set; }
    public Type TargetType { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

在Xaml文件中,您将其称为:

   <ListView.ItemsSource>
        <x:Array Type="{x:Type local:MasterPageItem}">
            <local:MasterPageItem Title="Radio" IconSource="hamburger.png" TargetType="{x:Type local:RadioPage}" />

            <local:MasterPageItem Title="Item 1" TargetType="{x:Type temp:ContactsPage}" />
            <local:MasterPageItem Title="Item 2" TargetType="{x:Type temp:TodoListPage}" />
            <local:MasterPageItem Title="Item 3" TargetType="{x:Type temp:ReminderPage}" />
            <local:MasterPageItem Title="File 4"  TargetType="{}Foodaddy" />
        </x:Array>
    </ListView.ItemsSource>
Run Code Online (Sandbox Code Playgroud)

我想要做的是"文件4",而不是创建一个视图,我宁愿发送一个字符串,(或更好的枚举),所以我可以调用不同的函数.示例:打开网页,注销等.如何修改TargetType?

xamarin xamarin.forms

8
推荐指数
1
解决办法
183
查看次数

React Navigation TabNavigator:重置选项卡更改上的上一个选项卡

我有以下路线结构:

StackNavigator
-StackNavigator
-TabNavigator
--Tab1
---Route 1 (Stack) (initial)
---Route 2 (Stack)

--Tab2
---Route 3 (Stack) (initial)
---Route 4 (Stack)
Run Code Online (Sandbox Code Playgroud)

当我访问Tab1 -> Route 1 -> Route 2 -> Tab2并返回时Tab1,活动路径是2而不是initialRoute1.

我正在做以下事情:

tabBarOnPress: ({ scene }) => {
    const { route } = scene;
    const tabRoute = route.routeName;
    const { routeName } = route.routes[0];

    navigation.dispatch(NavigationActions.navigate({ routeName: tabRoute }));

    navigation.dispatch(NavigationActions.reset({
        index: 0,
        actions: [
            NavigationActions.navigate({ routeName }),
        ],
    }));
},
Run Code Online (Sandbox Code Playgroud)

但问题是它首先显示Route 2然后导航到Route 1. …

reactjs react-native react-navigation

7
推荐指数
2
解决办法
2075
查看次数

VS Code 智能感知删除一些建议

情况是,在 VS Code 中编写代码时,智能感知给出了一些我不想看到的建议。

例如,在 Sass 中,当我写“他”时,我很想按 Tab 键并查看“高度”,但它却给了我“头”(呵呵)。

有没有办法从建议中删除一些短语或至少改变它们的顺序?

我试图编辑:

C:\Program Files (x86)\Microsoft VS Code\resources\app\extensions\scss\syntaxes\scss.json
Run Code Online (Sandbox Code Playgroud)

但显然它不会改变任何东西。

intellisense sass visual-studio-code

6
推荐指数
0
解决办法
584
查看次数

在Angular 2中找不到记录

我一直在搜索并想知道是否有任何指令可以帮助在表格为空的情况下在表格中显示"找不到数据".或者更好的是,当我订阅获取的数据时,我可以在我的服务中创建该功能?

  <table>
    <tbody>
        <tr *ngFor="let game of Games">

         </td>
          <td>{{game.name}}</td>
          <td>{{game.type}}</td>
          </tr>


      </tbody>
</table>
Run Code Online (Sandbox Code Playgroud)

javascript angular

6
推荐指数
2
解决办法
7409
查看次数

Angular + RxJS:在状态代码202上重复请求

我有一个简单的请求,如果响应状态为202,我想重复一下.目前,它看起来像这样:

this.http.get(endPoint, {
    withCredentials: true,
    headers: this.headers
})
.map((response: Response) => {
    return response.text() ? response.json() : '';
})
.catch((error) => this.handleError(error));
Run Code Online (Sandbox Code Playgroud)

我试过.repeatWhen()但不幸的是,我没有收到Response对象,我无法通过状态代码设置验证.

任何想法我该怎么做?

rxjs angular

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