我有一个表单,在提交时显示表单的结果,但更重要的是,滚动到显示结果的组件。我在尝试传递裁判和前锋裁判时陷入困境。我见过的所有演示都是同一文件中的组件。我的设置如下:
\n它App.js包含两个组件\xe2\x80\x93 Form.js,用于提交表单并Results.js显示表单提交的结果。该Results.js组件位于页面的下方,因此我想在用户单击表单上的 Enter 后滚动到该组件。
这是一个代码沙箱,演示了我的设置。
\n这里是相同的代码:
\n// App.js\nimport "./styles.css";\nimport Form from "./Form";\nimport Results from "./Results";\n\nexport default function App() {\n return (\n <>\n <Form />\n <Results />\n </>\n );\n}\nRun Code Online (Sandbox Code Playgroud)\n// Form.js\nimport { forwardRef, useState } from "react";\n\nconst Form = forwardRef(({ onScroll }, ref) => {\n const [name, setName] = useState("");\n\n const onSubmit = (e) => {\n e.preventDefault();\n onScroll();\n };\n\n return (\n <form onSubmit={onSubmit} className="tall">\n <input value={name} …Run Code Online (Sandbox Code Playgroud) 我想构建一个用户界面,由于历史原因,它有很多"列"信息.其中许多在所有情况下都与所有用户无关,所以我想我会看到停靠面板,以允许用户根据他们的工作场景隐藏或重新排列列.
这是.NET 3.5中的Winforms.
因此,我想要以下内容:
示例样机http://images.vkarlsen.no/so/2902953/dock-test.png
到目前为止,我已经尝试了以下组件包,没有运气:
Telerik的
允许我停靠在标签页内,但停靠面板无法从一个标签页移动到另一个标签页.当尝试将浮动面板拖放到与其来源不同的选项卡页面上时,它会显示停靠栏将成功,但是当它被丢弃时,它将停靠在其所有者容器上.
Divelements SandDoc
与Telerik相同的问题.
DevExpress XtraBars
与Telerik相同的问题.
http://sourceforge.net/projects/dockpanelsuite/
同样的问题,停靠站内容窗口只能属于一个停靠面板,这意味着它无法从一个选项卡迁移到另一个选项卡.
基本上,有没有人知道任何这样的组件(包)可以让我做我想要的?
编辑:好的,我试过让Sourceforge控件在上面工作,但我看不出如何使这个工作.
基本上,这就是我需要做的事情:
如果我理解下面的答案提到这个控件,我应该使用DockPanel而不是TabControl,而DockPane而不是TabPage,但据我所知,这只能让我能够停靠和取消选项卡页面,而这不是我想要的是.
无论如何,这是一个程序文件,只需创建一个Winforms项目,从sourceforge项目添加对.dll的引用,并在Program.cs中粘贴此代码:
using System;
using System.Windows.Forms;
using WeifenLuo.WinFormsUI.Docking;
namespace DockTest
{
public class DockWindow1 : DockContent
{
public DockWindow1()
{
TabText = "Dock-window #1";
DockPanel panel = new DockPanel();
panel.Dock = DockStyle.Fill;
Controls.Add(panel);
// tried this related to the exceptions
// this.DockPanel = panel;
}
}
public class DockWindow2 : DockContent
{
public DockWindow2() …Run Code Online (Sandbox Code Playgroud) 自从昨晚Joomla 3.0 Alpha发布以来,我想尝试将我编写的Joomla 2.5组件转换为新的Joomla 3.0.我一直在关注所有的开发计划,他们说JController,JView和JModel将被改为在每一个之后都有"Legacy",这将是你必须改变的全部内容.
我遇到了另一个问题,收到如下错误信息:
" 严格标准:MYCOMPONENTController :: display()的声明应该与JControllerLegacy :: display()的声明兼容 "
我看过更多的文档和帖子,没有人遇到过这个问题或谈论它,所以只是想把它拿出来,看看我需要做些什么来解决这个问题.谢谢大家!
我正在尝试向我的应用添加一个按钮,将其从设备管理员中删除,并使用下面的代码,但我的应用程序崩溃了.
码:-
按钮点击: -
{
ComponentName devAdminReceiver = new ComponentName(this, DemoDeviceAdminReceiver.class);
DevicePolicyManager dpm = (DevicePolicyManager) getSystemService(Context.DEVICE_POLICY_SERVICE);
dpm.removeActiveAdmin(devAdminReceiver);
}
Run Code Online (Sandbox Code Playgroud)
在上面的代码中,DemoDeviceAdminReceiver是一个扩展DeviceAdminReceiver的类.
错误日志: -
10-28 15:26:09.295: E/AndroidRuntime(26101): FATAL EXCEPTION: main
10-28 15:26:09.295: E/AndroidRuntime(26101): java.lang.IllegalArgumentException: Unknown admin: ComponentInfo{com.dragonnis.intellicover/com.dragonnis.intellicover.DemoDeviceAdminReceiver}
10-28 15:26:09.295: E/AndroidRuntime(26101): at android.os.Parcel.readException(Parcel.java:1331)
10-28 15:26:09.295: E/AndroidRuntime(26101): at android.os.Parcel.readException(Parcel.java:1281)
10-28 15:26:09.295: E/AndroidRuntime(26101): at android.app.admin.IDevicePolicyManager$Stub$Proxy.removeActiveAdmin(IDevicePolicyManager.java:2940)
10-28 15:26:09.295: E/AndroidRuntime(26101): at android.app.admin.DevicePolicyManager.removeActiveAdmin(DevicePolicyManager.java:183)
Run Code Online (Sandbox Code Playgroud) 我创建了一组嵌套组件.
代码在这里:http://emberjs.jsbin.com/hasehija/2/edit.
HTML:
{{#level-1}}
{{#level-2}}
{{#level-3}}
<button {{action 'handleAction'}}>
Click me (yielded)
</button>
{{/level-3}}
{{/level-2}}
{{/level-1}}
Run Code Online (Sandbox Code Playgroud)
JS:
App.ApplicationController = Ember.Controller.extend({
actions: {
handleAction: function() {
alert('Handled in ApplicationController');
}
}
});
App.Level1Component = Ember.Component.extend({
actions: {
handleAction: function() {
alert('Handled in Level 1');
}
}
});
App.Level2Component = Ember.Component.extend({
actions: {
handleAction: function() {
alert('Handled in Level 2');
}
}
});
App.Level3Component = Ember.Component.extend({
actions: {
handleAction: function() {
alert('Handled in Level 3');
this.set('action', 'handleAction');
this.sendAction(); …Run Code Online (Sandbox Code Playgroud) 是否可以将函数传递给组件并在传递参数的组件内调用此函数?
例:
帖子列表
<post-list posts="blog.posts"
loading="blog.loadingPosts"
get-post-url="blog.getPostUrl"
is-user-authenticate="blog.user">
</post-list>
Run Code Online (Sandbox Code Playgroud)
getPostUrl是一个函数(在容器控制器内):
const getPostUrl = (postId) => {
const protocol = $location.protocol();
const host = $location.host();
const port = $location.port();
return protocol + "://" + host + "" + (port !== 80 ? ":" + port : "") + "/blog/post/" + postId;
};
Run Code Online (Sandbox Code Playgroud)
帖子列表:组件
const PostList = {
"bindings": {
"posts": "<",
"loading": "<",
"getPostUrl": "&", //Function getPostUrl
"isUserAuthenticate": "<"
},
"template": `<div>
<div class="col-md-9 text-center" data-ng-if="$ctrl.loading">
<i class="fa …Run Code Online (Sandbox Code Playgroud) 我一直在线使用这些教程并创建了一个'ok'SPA数据输入应用程序.
我把它连接到我的WEB API很好,但只构建了一个模型,我的AppModule已经安静了几行.
我正在考虑使用当前的方法,我认为一旦我完成它,AppModule将是一个疯狂的大小,难以阅读,甚至可能更难调试.
我是否可能错过了如何构建Angular2更大应用程序的观点?
我正在努力寻找一个大于1个组件的在线教程/项目供参考.
下面是我的app.module.ts文件夹结构.
我分开我CashMovement,ListComponent并且DataService我会认为这是很好的做法,但再添10个不同的数据服务,并列出与app.module将是漫长的.
在我继续进行任何进一步的工作之前,任何人都应该阅读一些他们可以指向我的建议,或者我理解的建议对个人意见是主观的.
import './rxjs-operators';
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { FormsModule } from '@angular/forms';
import { HttpModule } from '@angular/http';
import { PaginationModule, DatepickerModule, Ng2BootstrapModule, ModalModule, ProgressbarModule, TimepickerModule } from 'ng2-bootstrap/ng2-bootstrap';
import { SlimLoadingBarService, SlimLoadingBarComponent } from 'ng2-slim-loading-bar';
import { AppComponent } from './app.component';
import { DateFormatPipe } from './shared/pipes/date-format.pipe';
import { HighlightDirective } from './shared/directives/highlight.directive'; …Run Code Online (Sandbox Code Playgroud) 关于道具和功能组件,我有一个看似微不足道的问题.基本上,我有一个容器组件,它在状态改变时呈现Modal组件,这是由用户单击按钮触发的.模态是一个无状态功能组件,它包含一些输入字段,这些输入字段需要连接到容器组件内部的函数.
我的问题:当用户与无状态Modal组件中的表单字段交互时,如何使用父组件内部的函数来更改状态?我错误地传递道具吗?提前致谢.
容器
export default class LookupForm extends Component {
constructor(props) {
super(props);
this.state = {
showModal: false
};
}
render() {
let close = () => this.setState({ showModal: false });
return (
... // other JSX syntax
<CreateProfile fields={this.props} show={this.state.showModal} onHide={close} />
);
}
firstNameChange(e) {
Actions.firstNameChange(e.target.value);
}
};
Run Code Online (Sandbox Code Playgroud)
功能(模态)组件
const CreateProfile = ({ fields }) => {
console.log(fields);
return (
... // other JSX syntax
<Modal.Body>
<Panel>
<div className="entry-form">
<FormGroup>
<ControlLabel>First Name</ControlLabel>
<FormControl type="text"
onChange={fields.firstNameChange} placeholder="Jane"
/>
</FormGroup> …Run Code Online (Sandbox Code Playgroud) 我想知道如何使用props和检索将对象传递给子组件.我理解如何将其作为属性,但如何传递对象并从子组件中检索对象?当我从子组件使用this.props时,我得到未定义或错误消息.
父组件
<template>
<div>
<child-component :v-bind="props"></child-component>
</div>
</template>
<script>
import ChildComponent from "ChildComponent.vue";
export default {
name: 'ParentComponent',
mounted() {
},
props: {
firstname: 'UserFirstName',
lastname: 'UserLastName'
foo:'bar'
},
components: {
ChildComponent
},
methods: {
}
}
</script>
<style scoped>
</style>
Run Code Online (Sandbox Code Playgroud)
儿童组件
<script>
<template>
<div>
</div>
</template>
export default {
name: 'ChildComponent',
mounted() {
console.log(this.props)
}
}
</script>
Run Code Online (Sandbox Code Playgroud) 我正在阅读这个很棒的教程,解释了@Component.BuilderDagger 2中的工作方式.作者做得很好,文章很简单,但我仍需要澄清一些令人困惑的事情:Dagger 2的默认实现看起来像这样:
组件:
@Singleton
@Component(modules = {AppModule.class})
public interface AppComponent {
void inject(MainActivity mainActivity);
SharedPreferences getSharedPrefs();
}
Run Code Online (Sandbox Code Playgroud)
模块:
@Module
public class AppModule {
Application application;
public AppModule(Application application) {
this.application = application;
}
@Provides
Application providesApplication() {
return application;
}
@Provides
@Singleton
public SharedPreferences providePreferences() {
return application.getSharedPreferences(DATA_STORE,
Context.MODE_PRIVATE);
}
}
Run Code Online (Sandbox Code Playgroud)
组件实例化:
DaggerAppComponent appComponent = DaggerAppComponent.builder()
.appModule(new AppModule(this)) //this : application
.build();
Run Code Online (Sandbox Code Playgroud)
根据文章,我们可以通过避免使用@Component.Builder和@BindsInstance注释向模块构造函数传递参数来进一步简化此代码,然后代码将如下所示:
组件:
@Singleton
@Component(modules = {AppModule.class})
public interface AppComponent …Run Code Online (Sandbox Code Playgroud)